in reply to Environment Variable

There are several problems in your code:
  1. The hash you declare is probably not what you wanted to be. Use Dumper to have a look at it, or just try print %Env{Path} - you perhaps meant something like
    my %Env = ('PPA_CURRENT_PROJECT' => ['D:\Projects\CurrentProject' => ' +Directory' ], ...
  2. To compare string values, do not use == (it is used for numbers). The right operator is eq.