Установка переменных среды в текущей среде с помощью python (win32com) - PullRequest
0 голосов
/ 09 февраля 2011

Я пытаюсь использовать python для установки переменных среды, которые будут сохраняться в Pythons родительская среда , даже после того, как python вернется в оболочку, но не будет сохраняться после того, как родитель оболочка закрыта. Открытие новой оболочки должно потребовать повторного запуска сценария python для правильной настройки среды.

Исходя из рекомендаций этого поста, я пытаюсь сделать это с помощью библиотеки python win32com. К сожалению, у меня очень мало опыта работы с Win32 API.

По сути, мне нужен способ получить указатель на текущую среду и установить переменные среды таким образом, чтобы они сохранялись в родительской среде python, но не сохранялись после выхода из родительской среды.

Ответы [ 2 ]

1 голос
/ 09 февраля 2011

В связанном посте рассказывается, как изменить среду по умолчанию , которая повлияет на новые процессы.Он манипулирует значениями реестра.

"Процесс никогда не может напрямую изменять переменные окружения другого процесса, который не является дочерним для этого процесса" , говорится в документации MS.Таким образом, вы никогда не достигнете своей заявленной цели из дочернего процесса, Python или нет.

0 голосов
/ 09 февраля 2011

Невозможно изменить среду родителя, по замыслу.Лучшее, что вы можете сделать, - это заставить вашу программу выдавать команды, которые изменяют среду, а затем вызывающая программа должна оценить вывод вашей команды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...