在VS2010 SL5上进入调试模式时,如何避免“无源可用”窗口

时间:2012-08-23 16:12:19

标签: visual-studio-2010 debugging

在VS2010 SL5上进入调试模式时,如何避免“无源可用”窗口 enter image description here

5 个答案:

答案 0 :(得分:2)

在工具,选项,调试,常规页面中。检查是否启用了“启用.NET Framework源步进”,如果已启用,则禁用。

答案 1 :(得分:2)

我尝试了所有建议的修复程序;没有什么对我有用。 经过几个小时的试验,我终于找到了解决方案。错误迭代。

事实证明,“无源可用”错误是由于VS调试器环境中的堆栈溢出造成的。

原本应该步入的C / C ++代码函数(通过VS调试器)使用的是一个初始化为几MB大小的堆栈数组的变量。当我用堆分配替换它时,VS成功地进入了代码。

这对我有用。

请注意,在我的情况下,实际代码(带有堆栈分配)在调试器中运行时没有堆栈溢出错误(如果我跳过No source available错误)。只是因为内部堆栈溢出,VS的调试器无法进入另一个C / CPP文件中的特定函数。

希望这有帮助。

答案 2 :(得分:0)

你可以点击Shift+F11走出去,它将完成它所在的任何不可用的功能并停在下一行(它也可能不可用,但继续使用Step Out直到你得到你想要检查的代码。)

答案 3 :(得分:0)

此问题有一个扩展名:

http://erwinmayer.com/labs/visual-studio-2010-extension-disable-no-source-available-tab/

但是根据我自己的经验,在找到这篇文章之前(我在页面中但是我试图在没有阅读文章的情况下自己修复它)我已经通过接受类似于"选择源文件的确认消息来解决这个问题与编译的程序集不同。您确定要将此文件用于调试吗?"。但是我不记得我为了得到这个消息而做了什么。我认为有一个链接标签,我点击了#34;没有可用的来源"窗口然后出现确认消息,确认问题后就消失了。

答案 4 :(得分:0)

关于VS2019,此问题的描述在MSDocs中提供。
对于必需的 vcruntime ucrt 源文件,从先前已卸载的VS版本导入后,可能会出现此问题。
为了防止VS使用旧目录,请找到解决方案属性页,然后导航到 Debug Source Files 对话框。 单击对勾按钮以检查可以删除所有无效条目的条目。 目录中应始终存在 vcruntime ucrt 源,并且浏览以查找源代码对话框顶部的路径应始终显示正确的路径。
在我的情况下,由于drive bug的出色表现,它被提示输入“ D”驱动器而不是“ C”驱动器。此外,无法粘贴提供的路径来刷新视图,因此,如果没有一个更明智的选择,则必须使用该对话框从桌面或等效位置一直导航到所需位置。