是否可以重新加载(Windows)环境变量?

时间:2013-02-26 21:11:54

标签: python windows environment-variables

究竟是什么意思。我可以从Windows>设置每用户环境变量。键入“Path”,或使用RegEdit,甚至是Python脚本。

但如果我运行一个应用程序(例如从Launchy运行,或从Chrome启动它),它将不会获取新变量。我必须启动一个新的cmd或Windows资源管理器(我认为)来获取新值。

现在,显然我可以在每次使用的基础上设置它们,但是我想为我的帐户全局设置它们,以及我当时碰巧使用的任何过程。这可能吗?是否可以(或更容易)从Python脚本执行操作?

1 个答案:

答案 0 :(得分:2)

如果您在注册表中设置环境变量(或通过系统属性>高级>环境变量UI),则对于从设置变量后创建的顶级上下文启动的每个进程,它都是全局且持久的。在更改之前初始化的shell和上下文将不会获取这些更改,除非您明确地将注册表中的值与该上下文中的现有值合并。每个上下文都会继承其父级的环境,但在此之后,对父级或子级环境的更改不会沿任一方向传播。在顶层创建的上下文从注册表中获取其环境。