我需要调试的应用程序需要设置环境变量。 在Visual Studio 2012中,这看起来非常复杂。我想做类似的事情:
set path=c:\foo;c:\bar;c:\windows;c:\program files\application
set port=12345
set server=hulligulli
Microsoft告诉我,我应该只使用“使用标准环境变量语法”。所以我希望我可以打开配置属性/调试/环境并编写
set path=c:\foo;c:\bar;c:\windows;c:\program files\application
set port=12345
set server=hulligulli
或者:
path=c:\foo;c:\bar;c:\windows;c:\program files\application
port=12345
server=hulligulli
但两种变体都不起作用。鞋面根本没有设置路径。在较低版本中,Visual Studio会在每个空格上分割条目,因此上面的三行成为下面的四行:
path=c:\foo;c:\bar;c:\windows;c:\program
files\application
port=12345
server=hulligulli
下面这两个变种可以防止分裂,但它们也会阻止路径正确格式化。即应用程序将无法在路径中找到文件:
path=c:\foo;c:\bar;c:\windows;"c:\program files\application"
path="c:\foo;c:\bar;c:\windows;c:\program files\application"
通过将所有内容复制到没有空格的路径来解决路径空间问题后,我发现,实际上只使用了环境的第一行。即端口和服务器未设置。
path=c:\foo;c:\bar;c:\windows;c:\alternative_path\application
port=12345
server=hulligulli
如何在Visual Studio调试环境中设置多个环境变量?
加分问题:如何在Visual Studio调试环境中使用标准路径条目(带空格)?
答案 0 :(得分:5)
Visual Studio不允许设置多个环境变量。 这是一个known bug。微软已no intention to fix it。
Someone suggested手动编辑vcproj.user文件并用&替换换行符#xD; &安培; #xA; (那是:CRLF)。但这只能修复环境Field中的外观,而不是行为。
在< PropertyGroup>中设置变量在How to set environment variables in vs2012?中提出的vcxproj文件中也无济于事。
解决方法:在shell中设置变量,然后从该shell启动Visual Studio。
<强>更新强>: 此问题似乎在Visual Studio 2015中得到修复。