在 Visual Studio 2012 Express 中设置 C++ 调试环境

Posted

技术标签:

【中文标题】在 Visual Studio 2012 Express 中设置 C++ 调试环境【英文标题】:Setting C++ debug environment in Visual Studio 2012 Express 【发布时间】:2014-03-20 10:23:18 【问题描述】:

我需要调试的应用程序需要设置环境变量。 这在 Visual Studio 2012 中似乎非常复杂。我想做类似的事情:

set path=c:\foo;c:\bar;c:\windows;c:\program files\application
set port=12345
set server=hulligulli

Microsoft 告诉我应该只“使用标准环境变量语法”。所以我希望我可以打开 Configuration Properties/Debugging/Environment 并编写

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 调试环境中使用标准路径条目(带空格)?

【问题讨论】:

***.com/questions/16718193/…的可能重复 似乎相关,但据我所知不是重复的。 【参考方案1】:

Visual Studio 不允许设置多个环境变量。 这是known bug。微软有no intention to fix it。

Someone suggested 手动编辑 vcproj.user 文件并将换行符替换为 & #xD; (即:CRLF)。但这只修复了环境字段中的外观,而不是行为。

按照How to set environment variables in vs2012? 的建议在 vcxproj 文件的 中设置变量也无济于事。

解决方法:在 shell 中设置变量,然后从该 shell 启动 Visual Studio。

更新: 这个问题似乎在 Visual Studio 2015 中得到修复。

【讨论】:

以上是关于在 Visual Studio 2012 Express 中设置 C++ 调试环境的主要内容,如果未能解决你的问题,请参考以下文章

visual studio 2012 启动出现如下错误,怎么处理

Visual Studio 2012 未能检测到 Visual Studio 2008 构建工具

Visual Studio 2010 项目到 Visual Studio 2012

Visual Studio 2012 与 Visual Studio 2005 中的小程序慢得多

visual studio2012发布项目到iis

visual studio2012怎么安装