总结下遇到的几次断点无法命中的情况:

1.手误设置为release模式

如果是release模式的情况下,断点跳转命中情况是无法预知的,所以请修改成debug

2.与源文件不一致

这个情况是最常见的,很多网上的教程都叫大家在设置中 把“要求源文件和原始版本完全匹配”选项禁用,

这是没错的,甚至连VS都提示我们,可以去掉这个选项来保证断点命中进行调试,但是这样治标不治本,不是我们想要的

引起这个的真正原因其实是:

断点所在的代码 是属于一个被编译成dll (lib、exe) 之类的库工程,然后主程序引用了这个dll.

但是在F5运行时,只编译了主程序和相关依赖的选项,并没有重新编译dll这个工程,

然而我们又修改了这个dll工程中的某些代码,并下了断点想调试,那么此时VS就会提示断点无法命中。

因为主程序依赖的dll还是旧的dll ,并没有重新生成,但是dll中的代码文件又被修改了,所以断点才无法命中,如果能命中那才奇了怪了

解决方法:

1.就是在启动项目处右键,Build Dependencies ->Project Dependencies ,选择要一起编译的项目。重新F5就可以了。

2.或者手动选择断点所属工程,右键,build/rebuild 即可

3.确实不会进断点

上面第二种情况至少文件是一份,只不过被修改了不一致

而这种情况往往是文件根本就是两个文件

编译器会优化代码,有时一些判断或者分支会导致这一块代码确实不会命中,简单来说,你断点下错地方了

VS 断点不会命中的情况的更多相关文章

  1. 解决VS调试时断点不会命中

    断点调试是VS中的一大利器,有了它我们可以快速定位到代码的问题所在.在某些情况下会导致设置了断点后程序无法在断点处停下,下面分4种情况来解决断点不会命中的问题 百度经验:jingyan.baidu.c ...

  2. The breakpoint will not currently be hit. vs2005断点不被命中

    用会了vs2005但是发现坑爹的连断点都不会命中,原来是默认设置的问题.要使断点命中: 1. 首先确保程序是在DEBUG模式下运行: 2. 确认正确的项目设置:链接器->调试->生成调试信 ...

  3. ArcMap Add-in插件开发中解决VS调试时断点不会命中的问题

    在VS2010中进行ArcMap Add-in插件开发(ArcEngine10.1,ArcGIS10.1),运行时为.NET4.0,在程序中设置了断点进行调试,但是运行后程序并不会在断点处停止,且原来 ...

  4. WCF 断点不会命中

    VS的调试模式改为Debug 工具—选项—调试—常规中的‘要求源文件和原始版本完全匹配’的勾去掉

  5. vs2010断点使用技巧

    msdn:http://msdn.microsoft.com/zh-cn/library/vstudio/5557y8b4.aspx 有很多断点的文章. 为提供更大的灵活性,Visual Studio ...

  6. 最全Pycharm教程(11)——Pycharm调试器之断点篇

    最全Pycharm教程(1)--定制外观 最全Pycharm教程(2)--代码风格 最全Pycharm教程(3)--代码的调试.执行 最全Pycharm教程(4)--有关Python解释器的相关配置 ...

  7. Silverlight 之 断点调试

    silverlight程序经常会遇到无法调试的情况,下面来总结解决方案. 一.问题描述 在Silverlight开发过程中,经常时不时的会碰到Silverlight无法调试的问题.如下几种情况: 1. ...

  8. Visual Studio 调试系列3 断点

    系列目录     [已更新最新开发文章,点击查看详细] 断点是开发人员的工具箱中最重要的调试技术之一. 若要暂停调试程序执行所需的位置设置断点. 例如,你可能想要查看代码变量的状态或查看调用堆栈的某些 ...

  9. sbt结合IDEA对Spark进行断点调试开发

    笔者出于工作及学习的目的,经常与Spark源码打交道,也难免对Spark源码做修改及测试.本人一向讲究借助工具提升效率,开发Spark过程中也在摸索如何更加顺畅的对源码进行调试. Spark基于Sca ...

随机推荐

  1. Winform 窗体闪烁 & 任务栏提示

    准备: [DllImport("user32.dll")] static extern bool FlashWindowEx(ref FLASHWINFO pwfi); [DllI ...

  2. OC开发系列-类与对象

    面向对象 面向对象思想是一种解决问题的思想, 不在是面向过程的去思考问题怎样解决.面向对象解决问题时首先要考虑需要找几个对象能解决这个问题. 常见的概念: * Object Oriented 面向对象 ...

  3. SpringCloud学习笔记《---06 Config 分布式配置中心---》基础篇

  4. Linux sed命令实现替换文本内容

    /root/data/code-s3201/publish_codex/deploy/db.properties db.properties中的 1.0.0.6 替换为 1.0.0.7 sed -i ...

  5. vue项目 上传到git

    1. git add . 效果: 2. git commit -m '' 3. git push 效果: 4.在码云上就可以看到修改啦 2018-05-19  08:52:52

  6. Spring Boot环境搭建。

    1.环境准备. jdk1.8 idea(如果不会激活可以看另外一篇:https://www.cnblogs.com/joeking/p/11119123.html) 2.打开idea 如果是idea的 ...

  7. js 过滤非法字符

    demo = 'zhang#@$san'; reg=/[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im; if(reg.test(demo)){ t ...

  8. layui点击按钮自动刷新页面问题

    问题 <button class="layui-btn layui-btn-primary" onclick="findData()">查询< ...

  9. clientHeight / scrollHeight / offsetHeight 等属性的区别图

    网页(内容)可见区域宽:document.body.clientWidth 网页(内容)可见区域高:document.body.clientHeight 即页面浏览器中可以看到内容的这个区域的高度,一 ...

  10. DELPHI指针的使用

    DELPHI指针的使用 大家都认为,C语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上.因此,说指针是C语言的灵魂,一点都不为过.同时,这种说法也让很多人产生误解,似乎只有C语言的指针才 ...