如何为 C# 调试设置环境变量

本文关键字:设置 环境变量 调试 | 更新日期: 2023-09-27 17:56:44

我正在尝试将托管和本机dll加载到我的C#应用程序中。我想设置 PATH 环境变量,以便应用程序可以找到要加载的 dll。C++这很容易,但是如何在 C# 项目中做到这一点呢?(顺便说一下,我使用的是VS2012,.NET,WPF)

如何为 C# 调试设置环境变量

use Environment.SetEnvironmentVariable().

string currentPath = Environment.GetEnvironmentVariable("path");
Environment.SetEnvironmentVariable("path",currentPath + ";c:'path_to_libraries");

请记住,这仅在当前流程的范围内。 如果要设置持久性环境变量(用户或计算机范围),请使用Environment.SetEnvironmentVariable(string, string, EnvironmentVariableTarget)重载。 有关该参考,请参阅此处

小心这个东西。 我会明确设定目标,例如 System.Environment.SetEnvironmentVariable("windir", System.Environment.GetEnvironmentVariable("SystemRoot"), EnvironmentVariableTarget.User);

当我没有设置目标时,我的 Windows 会话发生了非常奇怪的事情,要求我注销并登录甚至重新启动。 因此,除非此更改确实是在机器或过程级别进行的,否则不要假设默认的结果令人满意。