虽然不如从正在调试的应用程序之外进行设置那样简洁,但您可以像这样添加到Main
中(注意:我是VB程序员):
#if (DEBUG)
Environment.SetEnvironmentVariable("YourVar", "YourVal");
#endif
这在C++ IDE中是可行的,但在C# IDE中不行。我猜它被有意省略了,因为C#有更好的配置程序的方式。环境变量很麻烦,因为它们需要一个安装程序,在部署应用程序时会操作用户系统环境。这很容易出错,并且经常会出错。
C#的方法是使用应用程序设置。项目+属性,设置选项卡。
一个可能的替代方案是使用命令行参数。您将在Main()方法中获得它,您可以在Project + Properties,Debug选项卡中指定值。
您仍然可以使用一种技巧来获取所需的结果,这需要使用C ++ IDE启动程序:
ProcessStartInfo.EnvironmentVariables
存在的原因。在多进程应用程序中,当无法修改或利用命令行参数 API 时,它们是提供启动配置的另一种选择。我认为,在 C# 调试器中省略此设置是一个错误。 - nicholas对于在Visual Studio 2013下使用环境变量进行C#调试,我的做法是在Visual Studio的开始菜单中打开“VS2013开发人员命令提示符”。从命令提示符中设置所需的环境变量,然后运行“devenv.exe”启动Studio。接下来打开一个解决方案并开始调试。
请记住,如果您想更改环境变量,您需要停止调试,退出Visual Studio,然后在打开的命令提示符中调整变量,然后重新开始。请记住,环境作为进程(CMD.EXE)向前移动,启动下一个(DEVENV.EXE),然后启动下一个(YourApp)。最初的更改不会向前传递,您需要重新开始这个链条。