VS2015项目不再以调试模式运行

Sen*_*Sen 95 .net visual-studio visual-studio-2015

即使我在Debug配置中运行,这也是我得到的.

我得到这个的方式是启用"Just My Code"和Warn,如果启动时没有用户代码.这是我们项目最近发生的事情,我不知道我们做了什么导致这一点.但我一直无法修复它.断点不会触发,快速观察会产生奇怪的结果.

我试过谷歌搜索问题,但没有一个标准的"断点不会解雇"解决方案有效.我完全没有想法.

更新:我已经检查了配置管理器,并且每个项目也都设置为Debug. 在此输入图像描述

更新2:我关闭了"启用Optimaizations",我不再获得"您正在调试发布版本"对话框.它再次在断点处运行和停止!但是输出窗口在启动时显示:

未加载模块"Navigo.exe"的符号.

  1. 使用调试版本配置或禁用调试选项"启用我的代码".
  2. 检查调试选项下的"符号"设置.

所以这解决了我不能再使用断点和弹出窗口的主要问题.这是奇怪的,因为我认为你需要加载符号才能使断点工作.那么如果没有加载符号,断点如何工作呢?也许这只是一个坏消息?

小智 93

这也发生在我的几个项目上.我按照stuartd的建议审查了我的构建设置.但是,我的构建设置中启用"优化代码" .所以我启用了它并保存了项目.然后我取消选中它并再次保存.问题解决了.

有一些错误导致--optimize+标志传递给调试器.在修复错误之前,启用它然后禁用它是一个简单的解决方法.

  • 非常感谢 - 这对我有用. (7认同)

stu*_*rtd 91

使用配置管理器检查调试配置的实际设置 - 它位于主菜单中的Build\Configuration Manager中 - 如果它们设置为使用版本:

配置管理器

另外,确保项目正确定义DEBUG,并且不检查"优化代码":

属性

  • 取消检查优化代码就可以了.不确定它是如何开始检查的,但一旦关闭,一切似乎都开始重新开始了.所有其他调试设置都是正确的,这是唯一的一个.我也不再收到"符号未加载"消息. (5认同)
  • 我刚刚检查过,他们都设置为Debug.我用截图更新了帖子.还有其他想法吗? (2认同)

Joh*_*n T 20

只是想进入并说这在应用Update 1之后开始发生在我身上.现有项目开始显示这一点,我可以用一个全新的项目复制它.所有配置都设置为DEBUG,不检查Optimize.踢球者是第一次(或者在一个Clean之后)运行项目运行得很好,没有任何消息.停止然后重新运行项目(注意 - 项目不是重置)将显示对话框.唯一的解决方案是关闭Just My Code选项 - 这似乎是一个hack,就像它在Update 1之前没有任何问题.

  • 对于它的价值,微软的支持已经重现了这个问题并正在进行调查.我一听到,就会回复/回答. (6认同)
  • VS2015 Update 1之后出现相同的情况和症状.在每个调试会话之前运行Clean可以用作解决方法,因为它确实在第一次之后正常工作.刚刚进行重建是不够的,需要清理. (2认同)
  • 来自Microsoft的一句话是,这是一个已知的问题(它最初是发给调试器团队的,但确定它是一个构建问题,现在已经在Project系统团队的手中了.在这个问题上还有其他的bug,它是额定优先级1,因此应该按照下一次更新的方式进行.尽管如预期的那样,不会有任何关于何时发布(或实际更新内容)的承诺.所以.它已知且正在工作至少关闭调试常规选项中的"启用我的代码"似乎是一个解决方案. (2认同)

Dmi*_*tay 12

如果提到的解决方案都没有帮助,请检查项目的AssemblyInfo.cs以获取显式的DebuggableAttribute应用程序.好像它会覆盖编译器的调试/发布选项.

在我的案例文件中有这一行(遗留项目,不知道它是如何到达那里的).删除它解决了问题:

[assembly: System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你.我正在开发一个项目,我的客户端丢失了原始源代码,所以我不得不使用反编译器生成它.我唯一的猜测是反编译器将这一行放入. (2认同)

Thi*_*ijs 9

派对有点晚了,但我也遇到了这个问题.适用的修复是简单清理和重建我的项目.

  • 这个答案只适用于干净后的第一次调试. (2认同)

wez*_*ten 5

上述答案都不适合我.重新启动IIS修复它.