在C#中设置环境变量,在执行完成后保持不变

我需要从C#程序设置一个环境变量,以便稍后运行的批处理文件可以使用这个新创建的变量。 我试过用过:

Environment.SetEnvironmentVariable("USRNAM", "My Name", EnvironmentVariableTarget.Process); 

在此语句之后,我有一个断点设置,当它到达此断点时,我转到命令提示符,发出以下命令:

 C:\Users\Lenovo>SET USRNAM 

我明白了:

 Environment variable USRNAM not defined. 

如何设置在C#程序执行完成后仍然存在的环境变量?

建议非常感谢。

尝试使用EnvironmentVariableTarget.UserEnvironmentVariableTarget.Machine ,具体取决于您是要为当前用户还是为所有用户创建变量。

在这里查看有关该枚举的信息。