【问题标题】:How to change %PATH% value for "local system" account in MS Windows?如何更改 MS Windows 中“本地系统”帐户的 %PATH% 值?
【发布时间】:2015-11-11 04:22:42
【问题描述】:

我正在努力在 MS Windows 中为“本地系统”帐户设置 %PATH% 变量。

我在%PATH% 变量中添加了一些路径。并且该新路径(包括此路径中的工具)运行良好。 该路径中的工具可以使用 CMD 运行,没有问题。 但是一旦从 ms windows services.msc 作为服务运行相同的工具,它就会说没有这样的工具。因此,出于某种原因,%PATH% 变量没有为“本地系统”帐户更新。

我发现可以通过以下方式访问此帐户 CMD:

psexec -i -s cmd.exe

确实,我发现 CMD 以这种方式运行,并且 PATH 变量不需要工具路径。但我无法编辑它;我使用setsetx,但在“本地系统”帐户的%PATH% 中仍然没有可见的变化。

【问题讨论】:

    标签: windows cmd


    【解决方案1】:

    我想在 MS Windows 中为“本地系统”帐户设置 %PATH% 变量。

    您需要重新启动 Windows。


    在重新启动 Windows 之前,您对环境变量所做的更改不会影响在本地系统帐户下运行的服务

    如果您更新环境变量或添加新的环境变量,您必须重新启动计算机,然后您所做的更改才会影响在本地系统帐户下运行的服务。

    出现此问题的原因是在本地系统帐户下运行的服务从 Services.exe 进程继承其环境。当 Windows 启动时,Services.exe 进程接收本地系统帐户的环境设置。由于 Services.exe 进程不使用 Windows 消息传递,因此当它接收到指示在 Windows 启动后值已更改的消息时,Services.exe 进程不会更新其环境设置。您不能强制正在运行的服务确认本地系统帐户环境的动态更改。

    来源Changes that you make to environment variables do not affect services that run under the Local System account until you restart Windows

    【讨论】:

    • 谢谢你,弄明白这件事真是太令人困惑了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    相关资源
    最近更新 更多