Просмотр переменных среды процесса в Windows

1225
jan-seins

Есть ли способ просмотреть переменные среды конкретного процесса. Я знаю, что вижу их с помощью Process Explorer. Тем не менее, мне нужно использовать их в пакетном или PowerShell сценарий. Есть команда, которая делает это. Могу ли я использовать файл procxp.exe из Проводника процессов, чтобы получить эту информацию для использования в следующем сценарии?

1
Не уверен, что я могу говорить с «о конкретном процессе» (переменные сеанса), но если вы хотите увидеть все переменные окружения (я думал, что это только Система и Пользователь), вы можете использовать: (Get-WMIObject -Class "Win32_Environment") Dallas 6 лет назад 0
(get-process -id 17512) .StartInfo.EnvironmentVariables < Dallas 6 лет назад 0

1 ответ на вопрос

0
Art Gertner

Попробуйте следующее в powershell:

(Get-Process ).StartInfo.EnvironmentVariables 

ИЛИ ЖЕ

(Get-Process -id ).StartInfo.EnvironmentVariables 
Это не работает правильно. Вы можете легко проверить это, если откроете cmd и установите переменную. Теперь переменная установлена ​​в контексте cmd-процесса. Однако, если вы запустите команду ps, вы не увидите новую переменную. В ProcessExplorer вы можете увидеть это. jan-seins 7 лет назад 0
Кроме того, я видел, где это имеет очень неправильные переменные среды. Например, я запускаю процесс, когда User1 и User1 видят переменные среды User1, как и следовало ожидать. Если запросить тот же процесс у User2, User2 видит переменные среды User2. VertigoRay 6 лет назад 0