vc6.0 调试小结

原创 2012年03月30日 09:19:22


现在都用vs2008了,VC6的速度还是很怀念,来个小结吧。

断点相关快捷键:
1.F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点.
  F5调试状态运行程序,程序执行到有断点的地方会停下来.
  F10单步执行程序.
  CTRL+F10运行到光标所在行.
  F11和F10的区别是,如果当前执行语句是函数调用,则会进入函数里面.
  SHIFT+F11跳出当前所在函数.

特别说明:
  a.有的地方不能下断点.比如空行,基本类型定义语句(不初始化),等等非执行语句.比如
    int i;  // 此行不能下断点
  b.不是所有断点都会(断).比如下断点的语句在程序里面没有被执行.
  c.此外,ALT+F9还可以下条件断点,不过这个不常用,有兴趣的可以自己研究:)

2.如何调试Release版的程序?
  有些程序在debug下运行的很好,但在release下却总是失败,默认情况下release是不能调试的. 怎么解决呢?
  其实"debug"和"release"都只是一个代号而已,各自对应一组不同的编译选项.
  在release的默认设置下,ALT+F7 ,调出工程设置对话框,切换到link选项卡,勾选"Generate debug info",然后再切换到C/C++选项   卡,在"Optimizations"里面选"Disable(Debug)",在下面的"Debug info"里面选"Program Database for Edit and Continue".然   后点OK保存设置,重新编译程序,下断点即可.
3.上面两点已经能应付很多种情况了,但是有时候即使在debug下也不能下断点,我以前也曾经遇到过这种问题,一个调了4层的dll,就是不能下断点.其实还除了上面的方法,还有一种最底层的实现技术:使用汇编.
  细心的人可能会发现,有时候在调试状态下当程序出现异常的时候,光标会指向汇编代码,而这个代码就是int 3,这其实是一个中断.
  在你的代码的任意地方加上
  __asm{
  int 3
};
  用debug编译,然后直接运行程序.当程序执行到上述代码的时候,就会出现一个框,告诉你说一大堆信息,说程序错了,下面有"调试"、"终止"、"忽略",不用理,点调试就可以进入跟 踪了。这种方法我还没有失 手过:)

VC++ 6.0 快捷键 及 断点调试方法

断点调试 F9在某行代码处下断点,程序运行到这里会中止 可以下多个断点 F5 :开始调试,程序会运行到第一个断点 F10:逐步执行,如果遇到我们自己写的函数的调用,如果函数里面有断点就跟进函数,如果...
  • u011057161
  • u011057161
  • 2014年11月01日 21:40
  • 6559

win7 64位 VC++6.0 调试出错 解决办法

from:http://blog.sciencenet.cn/blog-568124-641253.html win7 64位VC++6.0调试代码无法关闭窗口解决方法 VC6在64位Wind...
  • xuxiatian
  • xuxiatian
  • 2016年01月26日 14:18
  • 1089

VC6在64位Win7下调试无法退出

哎,真是的,每次用vc++6.0调试后exe窗口就无法关闭,即使任务栏也不行。 百度了下弄好了,分享下:检查文件DM.dll版本,DM.dll在程序安装目录的“Common/MSDev98/Bin”-...
  • cs13572139867
  • cs13572139867
  • 2013年12月19日 09:08
  • 1661

VC6.0调试技巧(转载)

说明:文 章的名字可能取的比较大,毕竟本人能力有限,掌握的知识比较肤浅,写出的东西可能没有多大的价值。但是看到一些初学者经常问一些太过简单的问题,我终于忍 不住想写点什么。通过与很多初学者交流,我...
  • custqi
  • custqi
  • 2011年05月29日 13:47
  • 14007

Windows API 实现查找、删除任意类型的文件_VERSION20120605(vc6.0调试通过)(2012.6.5最新修改)

1 // FileToolsV20120605.cpp : Defines the entry point for the application. 2 // 3 //用vc6.0建立...
  • zww0815
  • zww0815
  • 2016年04月28日 16:11
  • 207

VC6.0中Release下调试模式设置

Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 ...
  • wangqinghao
  • wangqinghao
  • 2012年07月09日 19:41
  • 7050

VC++6.0工具创建文件、编译、链接、运行以及调试基础-顺序结构

熟悉开发环境,程序开发流程,基本调试 1.实验目的和要求 1.熟悉Visual C++ 6.0的集成开发环境; 2.学习完整的C++程序开发过程,理解简单的C++程序结构; 3.学习C++...
  • smallgyy
  • smallgyy
  • 2012年11月07日 18:37
  • 2455

VC++6.0 单步调试

在VC++6.0中的单步调试: 调试重要的几个键: F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点. F5调试状态运行程序,程序执行到有断点的地方会停下来. ...
  • outer_star
  • outer_star
  • 2013年04月13日 10:38
  • 614

VC++6.0 调试功能入门——图解教程

Visual C++ 6.0调试功能 这是我自己在学习时整理的,希望对大家有用.其中有几个部分的内容,如下: ※My Note 全部由我截图并参考资料进行说明,这其中有大量的内容是调试过...
  • kaisuihu
  • kaisuihu
  • 2013年03月27日 10:51
  • 718

VC++6.0调试:Watch窗口的使用

有以下代码: #include #include class AutoExpand { public: AutoExpand(int val, char* pval) { ...
  • BeanJoy
  • BeanJoy
  • 2012年05月18日 00:15
  • 5903
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vc6.0 调试小结
举报原因:
原因补充:

(最多只允许输入30个字)