解决 VS 2008 2010 2012 断点 失效 以及 变量 调试 无法 查看
2010-11-11 14:40
627 查看
VS2008按F5无法在断点处停留,主要有以下几种情况:1、在配置-》通用配置-》调试里边把command line、command argument、working dir设置好。并且把该工程设置为启动项,否则断点可能无效。 2、调试时到“附加到进程”菜单里看有没有“aspnet_wp.exe”的进程,如果没有,添加。(只是针对C#)3、控件的事件丢失。这个比较常见。 4、右键解决方案的属性里,看生成项里的“生成调试信息”那里是不是FALSE,如果是,改成TRUE。 5、想要调试的代码行根本不能调试。这个比较少见。6、在工具-> 选项->调试->常规中有个选项,要求源文件与原始版本完全一致,默认的是选中的,取消试试。7、如果是dll工程,把项目属性-〉常规-〉输出目录,设置为调用该dll的exe所在的目录,同时把链接器-〉调试-〉生成调试信息 设为是/DEBUG,重新编译调试看能否起效。8、dll断点失效,可以先重新编译下试试看,不行的话找到刚刚的dll输出的目录,看看是否有pdb文件生成,项目属性-〉链接器-〉调试-〉生成程序数据文件,可以设置pdb输出路径。让pdb和dll都生成在工作目录下。9、如果还不行,用depends工具查看该exe是否调用了你的dll,Release版的exe调用Release的dll,debug也是,可能你的exe就是release版的,它是不会调用xxxxxxd.dll的,所以无法调试,反之亦然。解决方法就是选用和exe版本一致的dll进行调试。10、症状:有的变量可以查看,大部分不行。在工程右键-》属性-》C/C++-》代码优化,改为已禁用(/Od),可以查看了。11、今天静态库断点又失效了,排查结果是:为了方便我把静态库提取到一个文件夹里用,调用该静态库的dll,链接的是我提取的静态库,而不是工程里生产的静态库。解决办法:dll工程右键-》C/C++-》附加包含目录,改为静态库源码头文件路径,右键-》连接器-》附加库目录,改为静态库工程生成静态库的路径。根据依赖,从前到后把lib都重新编译,最后编译dll,debug,断点OK了。 总结:断电失效无非以下几种情况:1、“要求源文件与原始版本完全一致”钩子没有取消2、pdb文件没生成,这个要求你断点位置所在源码的工程的pdb必须有。3、不管是exe、静态库还是动态库的工程,依赖的库不对,要么是路径不对,要么是旧库(没有pdb的)4、改完设置,忘了重新编译。
相关文章推荐
- Visual Studio 2010 + IE 9无法断点调试JavaScript的解决方法
- vs 无法断点调试的解决办法
- VS 2008/2010无法清理解决方案和项目问题的解决
- VS 2008 下调试PCL程序出现计算机丢失PCl_common_debug.dll,调试程序出现无法定位到MSVCP90D.dll解决办法
- 小记:关于Keil软件调试(STM32)单片机设置断点时无法查看变量值的解决方法
- 解决VS2013调试ASP.NET中无法调试的问题:当前不会命中断点。在 XXXX.dll 中找到了 XXX.cs 的副本,但是当前源代码与 XXXX.dll 中内置的版本不同。
- VS调试时断点无法进入或命中的原因及解决方法(PDB引发的)
- codeblocks出现无法调试或断点失效问题解决办法
- VS调试无法进入DLL中断点解决方法
- VS 2010 中调试C++项目时无法查看调试内存窗口
- vs下调试变量无法添加到监视或者无法打断点
- 解决:eclipse 断点调试进入到class文件,无法查看变量值问题
- VS调试时断点无法进入或命中的原因及解决方法(PDB引发的)
- 解决:eclipse 断点调试进入到class文件,无法查看变量值问题
- VS 2010调试程序,怎么查看其中变量的值
- VS2015 安装mvc4安装包以及vs2010 sp1后导致Razor语法失效代码不高亮(能正常运行)/视图页面无法智能提示(.cshtml)解决办法
- VS调试无法进入DLL中断点解决方法
- 解决vs 2012中调试时无法调试,vs卡掉程序退出
- VS调试Qt程序时查看变量显示地址值问题解决
- 关于《安装visual studio 2008下subversion插件ankhsvn2.4导致vs无法正常启动的原因以及解决办法》