@@ -40,10 +40,19 @@ public void AddPackageExecutablePathToUserPath()
4040 }
4141
4242 private bool PackageExecutablePathExists ( )
43+ {
44+ return PackageExecutablePathExistsForCurrentProcess ( ) || PackageExecutablePathWillExistForFutureNewProcess ( ) ;
45+ }
46+
47+ private bool PackageExecutablePathWillExistForFutureNewProcess ( )
4348 {
4449 return EnvironmentVariableConatinsPackageExecutablePath ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . User ) )
45- || EnvironmentVariableConatinsPackageExecutablePath ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . Machine ) )
46- || EnvironmentVariableConatinsPackageExecutablePath ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . Process ) ) ;
50+ || EnvironmentVariableConatinsPackageExecutablePath ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . Machine ) ) ;
51+ }
52+
53+ private bool PackageExecutablePathExistsForCurrentProcess ( )
54+ {
55+ return EnvironmentVariableConatinsPackageExecutablePath ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . Process ) ) ;
4756 }
4857
4958 private bool EnvironmentVariableConatinsPackageExecutablePath ( string environmentVariable )
@@ -58,21 +67,17 @@ private bool EnvironmentVariableConatinsPackageExecutablePath(string environment
5867
5968 public void PrintAddPathInstructionIfPathDoesNotExist ( )
6069 {
61- if ( ! PackageExecutablePathExists ( ) )
70+ if ( ! PackageExecutablePathExistsForCurrentProcess ( ) && PackageExecutablePathWillExistForFutureNewProcess ( ) )
71+ {
72+ _reporter . WriteLine (
73+ CommonLocalizableStrings . EnvironmentPathWindowsNeedReopen ) ;
74+ }
75+ else if ( ! PackageExecutablePathWillExistForFutureNewProcess ( ) )
6276 {
63- if ( Environment . GetEnvironmentVariable ( PathName , EnvironmentVariableTarget . User ) . Split ( ';' )
64- . Contains ( _packageExecutablePath ) )
65- {
66- _reporter . WriteLine (
67- CommonLocalizableStrings . EnvironmentPathWindowsNeedReopen ) ;
68- }
69- else
70- {
71- _reporter . WriteLine (
72- string . Format (
73- CommonLocalizableStrings . EnvironmentPathWindowsManualInstructions ,
74- _packageExecutablePath ) ) ;
75- }
77+ _reporter . WriteLine (
78+ string . Format (
79+ CommonLocalizableStrings . EnvironmentPathWindowsManualInstructions ,
80+ _packageExecutablePath ) ) ;
7681 }
7782 }
7883 }
0 commit comments