В PowerShell постоянно устанавливайте среду PATH
, используя следующий метод *1003*:
[Environment]::SetEnvironmentVariable( 'VARIABLE_NAME', 'VALUE', [EnvironmentVariableTarget]::Machine )
Чтобы удалить переменную среды, задайте для переменной среды значение $null
:
[Environment]::SetEnvironmentVariable( 'VARIABLE_NAME', $null, [EnvironmentVariableTarget]::Machine )
А почему вашим пользователям не хватает этого ключа реестра? Это звучит как большая проблема, потому что HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
- это место, где хранятся и извлекаются системные переменные среды. Так было с XP, и в документации об этом говорится еще. NET Framework 2.0 .
Если этот ключ отсутствует на чьей-то машине, я бы сделал ставку на пользователя либо не ищет в нужном месте, либо причиной может быть какое-то вредоносное ПО.
Если вы хотите установить переменную среды на уровне процесса, как указано в комментариях, вы можете использовать переменная $env:
для чтения и установки переменных среды на уровне процесса:
$env:VARIABLE_NAME = 'VALUE'