2012-05-24 2 views
1

Я пытаюсь установить переменные среды пользователя XYZ из powershell администратора пользователя ABC. Я использую Start-Process для запуска powershell пользователя XYZ, но я не могу зафиксировать результат. Весь этот процесс должен выполняться на Java.Настройка переменных окружения через Powershell для другого пользователя

Может кто-нибудь помочь мне.

Благодаря Ajax

ответ

0

При изменении переменных среды, изменение влияет только на текущий сеанс PowerShell (как если бы вы использовали команду SET в ЦМД Windows). Чтобы изменения были постоянными, вы должны изменить их с помощью утилиты, такой как SETX. У вас также должно быть разрешение на изменение значений.

+0

Hi David, Спасибо за ответ. Я попытался использовать SETX, но недостатком SETX является то, что нам нужно указать имя пользователя и пароль (текстовый формат) – ajax

+1

Hi David, Чтобы дать вам больше информации о том, что я пытаюсь сделать, выполните следующие действия. Я вошел в систему как User-ABC, и я хочу добавить переменные окружения в User-XYZ, который находится в той же системе. Этот процесс должен быть безопасным и должен выполняться с помощью Java-кода. В SetX или Runas вам нужно указать пароль, который является простым текстом, поэтому безопасность будет потеряна. – ajax

+0

Не знаю, что с java на картинке добавляется как ограничение, но, возможно, вы можете найти что-то для вас здесь: http://learningpcs.blogspot.com/2012/01/powershell-v2-permanently-add.html –

0

Проверить это TechNet статья о нем: https://technet.microsoft.com/en-us/library/ff730964.aspx

В принципе, вы будете хотеть, чтобы установить его с помощью метода .NET на машине объем:

[Environment]::SetEnvironmentVariable("TestVariable","Test Value","Machine")

Вам нужно для перезапуска сеанса Powershell для доступа к новой переменной среды после ее создания.

Смежные вопросы