C#设置环境变量

Pab*_*sso 12 c# environment-variables

我在使用C#设置环境变量时遇到问题.

我需要在某些情况下修改一些环境变量.例如,我需要修改NDSRC变量.

我用:

Environment.SetEnvironmentVariable("MY_VARIABLE", "value", EnvironmentVariableTarget.Machine);
Run Code Online (Sandbox Code Playgroud)

这很好用.

接下来我运行一些脚本whitch使用变量.现在有一个问题,因为脚本没有看到变量.

示例:使用设置Path变量(在末尾添加目录)

string path = Environment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.Machine) + ";c:\\";
Environment.SetEnvironmentVariable("Path", path, EnvironmentVariableTarget.Machine);
Run Code Online (Sandbox Code Playgroud)

打开Windows命令行(开始 - >运行 - > cmd.exe).

在命令行中键入cmd

系统找不到cmd.exe:'cmd'未被识别为内部或外部命令,可运行程序或批处理文件.

如果检查Windows设置 - >环境变量,则路径正确设置为新值.如果您签入打开的命令提示符,它也会被设置.

Ste*_*ner 7

不幸的是,您需要在刷新环境变量之前重新启动进程.请参阅此MSDN帖子.