VS2013 调试器无法再解析包含源代码路径的系统环境变量

Posted

技术标签:

【中文标题】VS2013 调试器无法再解析包含源代码路径的系统环境变量【英文标题】:VS2013 debugger can no longer resolve system environment variable containing source code path 【发布时间】:2014-12-24 14:07:01 【问题描述】:

我目前正在使用 Visual Studio 2013(更新 4)来构建 Qt5.4.0 项目。我使用的是 express 版本,所以我不使用 VS 插件。我的 .vcxproj 文件是使用构建脚本和 qmake 从 .pro 文件生成的。

在调试我的项目时,我有时会尝试进入 Qt 库代码。为此,我将 Qt 源代码的路径添加到解决方案属性->调试源文件设置,如前一篇文章 (VS2013 debugger can not find Qt sources) 中所述。

因为我有许多不同的项目,并且在 Qt 更新的情况下更新所有项目会很痛苦,我使用了指向该路径的系统环境变量“QTSRC”并将以下行添加到解决方案中: $(QTSRC)

这在前段时间很有魅力(使用 VS 的较旧更新和以前的 Qt 版本 5.x)。

但不幸的是,它不再起作用了。 VS 现在似乎完全忽略了系统环境变量(当我检查对话框中的“检查条目”按钮时,它也没有显示任何错误)。

有谁知道最近这里发生了什么变化以及必须做些什么来解决这个问题?将硬编码的路径添加到每个项目(仍然有效)并且必须在 Qt 更新后一遍又一遍地执行此操作会非常烦人。

【问题讨论】:

【参考方案1】:

我会查看属性页,它允许您设置可以在不同项目之间共享的用户定义值:

http://msdn.microsoft.com/en-us/library/675f1588.aspx

我用它们来设置全局包含路径,但看起来你几乎可以在那里设置任何东西。如果您希望它们用于所有项目但不包含在解决方案或项目文件本身中,请在 .User 页面中设置内容。

这里有一个很好的简短指南:

http://www.curlybrace.com/words/2012/12/17/setting-global-c-include-paths-in-visual-studio-2012-and-2011-and-2010/

【讨论】:

谢谢。这很有效,并且似乎是前一个更好的解决方案。有趣的是,我可以通过此解决方案再次使用我的系统环境变量。但我仍然很好奇为什么解决方案属性中不再接受系统环境变量......也许有人知道这一点?

以上是关于VS2013 调试器无法再解析包含源代码路径的系统环境变量的主要内容,如果未能解决你的问题,请参考以下文章

VS2012 & 2013:无法发布服务项目 - 指定路径太长

使用VS2013调试C语言时出错,连简单的Hello World都报错,调试时显示无法启动程序,无法访问

VS2013运行时总是报错:无法打开文件cv200.lib,该怎么处理

无法使用 Visual Studio 2013 调试托管代码(“无法评估表达式”错误 - 正在使用调试版本)(请注意,VS 2012 有效)

为啥vs2015安装时不能选择安装位置

VS2013无法启动IIS调试,被拒绝访问