Mam pewne problemy, jeśli chodzi o przekazywanie odpowiednich zmiennych środowiskowych do procesu. Poniżej możesz zobaczyć część mojego kodu, abyś mógł zrozumieć, co próbuję zrobić.Przekazywanie zmiennych środowiskowych do procesu w programie PowerShell 2.0, gdy zmienna jest zmieniana wiele razy
Mam dwa pliki EXE, które muszę uruchomić. Procesy uruchamiają niektóre aktualizacje w zależności od lokalizacji zmiennej środowiskowej %MainFiles%
. Po uruchomieniu kodu wydaje się, że pliki EXE nie rozpoznają zmiany. Jednak gdy patrzę pod właściwościami komputera, widzę, że zmienne są poprawnie zmieniane.
Czy ktoś wie, jak mogę zmusić proces do rozpoznania zmiany? Dzięki
while ($i -lt $Size) {
if ($TempEnv[$i] -eq "Done"){
$ExitCode="Completed"
return
} else {
$Temp = $TempEnv[$i]
Write-Host ("Starting Update for " + $Temp) -foregroundcolor "Green"
[System.Environment]::SetEnvironmentVariable("MainFiles", "$Temp","Machine")
[System.Environment]::GetEnvironmentVariable("MainFiles","Machine")
Copy-Item $CopyInstallData -destination $Temp
$process = Start-Process XMLUpgrade.exe -WorkingDirectory "C:\Program Files\Dtm" -wait
$process = Start-Process Update.exe -WorkingDirectory "C:\Program Files\Dtm" -wait
.
.
.