【问题标题】:Why windows service doesn't see environment variable?为什么windows服务看不到环境变量?
【发布时间】:2026-02-10 11:10:01
【问题描述】:

在我的 Windows 服务中,我试图读取环境变量 MY_SCRIPT 的值。但是,服务没有看到它并且

String myScriptPath = Environment.GetEnvironmentVariable("MY_SCRIPT", EnvironmentVariableTarget.User);

返回空字符串。

有什么解释吗?

谢谢。

【问题讨论】:

  • 你是如何设置环境变量的?它必须在机器级别而不是用户级别,因为服务在另一个用户的上下文中运行。
  • 我已经从用户级别进行了设置。现在我已经将它更改为系统并使用我的安装程序进行设置,它现在可以工作了。谢谢。

标签: c# windows-services environment-variables


【解决方案1】:

这个变量在哪里设置?

环境要么继承自父进程,要么在进程本身中改变。

【讨论】:

    最近更新 更多