VC6调试技巧

作者在 2010-03-18 18:52:37 发布以下内容

如果你是用VC6进行程序开发,那么下面这些技巧将会对你的程序开发有一些帮忙。

l 函数测试(利用VC自带的QuickWatch)

  

 

 

l       VC在调试过程中自动扩展类或结构

Notepad打开C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin\ AUTOEXP.DAT文件,在文本结尾增加WTL::CString =<m_pchData,st>,那么在调试的过程中所有的WTL::CString结构将自动显示出文本,而不再需要手动点一下当前CStringm_pchData才能显示出文本。其它类型的方法也是相同。

 

_STL::_String_base<*>=<_M_start,st> 显示 STL std::string

 

 

 

l       查看当前线程信息

方法一:在watch中加入dw @tib+24

方法二:打开Debug->Threads对话框,它会显示出所有的线程和当前的信息,同时还可以调整信息的优先级

 

 

 

 

l       查看代码的运行时间

运行到要查看的地方处,在watch中增加下面两个:

@clk

@clk = 0

 运行代码,@clk的值将被更新。更新的值就是当前代码使用的时间。这个可比每次都写timeGetTime或者其它函数来的简单。

 

 

l       使用SetNextStatement

在代码的运行过程中,如果你不希望执行一些代码,只要把光标放到你所希望的代码处,点出右键,选择SetNextStatement即可。

 

l       远程调试

    1. 本地机器

        编译

        共享程序目录

        映射这个共享到本地

        设置Debug->Debugger remote Connection...

            TCP/IP

            Settings.Machine

        打开工程设置在Debugremote path中设置远程目录

    2. 远程机器

        安装MSVCMON

        映射和本地机器相同的盘符

        运行MSVCMON

            Connect

            忽略其它设置

    3. 启动调试

 

 

l       显示Unicode字符

选中这个那么在调试程序的时候,ANSIUnicode编码的英文字母应该都可以正确显示了。

 

 

l       COM调试

        eax, hr

            如果返回值在EAX中,那么就可以用这个来查看

        ,wm

      用于windows消息

        @err

            用这个去显示GetLastError的可能返回值

        @err, hr

      显示GetLastError返回值信息

l       Win32异常

打开Debug->Exceptions对话框,你可以自己增加新的异常,同时也可以调整现有的异常。

安装最新的DBG文件到C:\WINDOWS\Symbols\dll目录,可以增加增加更多的异常信息。

其实自己平时也用一些调试内存和资源的方法,不过BoundCheck还是这方面的权威,我想安装一个这个还是最好的。

 

 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1759618

(编程)Work | 阅读 1175 次
文章评论,共0条
游客请输入验证码
浏览318286次