用debugview,打開debugview,運(yùn)行你的debug版本程序,可以定位到源文件的某一行。在vc源碼中需要輸出的地方用OutputDebugString就可以在這個(gè)工具中查看啦,對VC調(diào)試代碼非常實(shí)用,不用你用Messagebox一步步的調(diào)試。而且易于操作,查找錯(cuò)誤更方便。
DbgView界面和監(jiān)控方法:
點(diǎn)擊“Connect Local”
打開軟件后,頂部工具欄中選擇監(jiān)控主機(jī)。先看連接本地機(jī)調(diào)試,點(diǎn)擊“Connect Local”即可。
工具欄
在這個(gè)工具欄上,主要看幾個(gè)圖標(biāo)
此按鈕,表示是否開啟捕獲服務(wù)
此按鈕,表示是否捕獲系統(tǒng)內(nèi)核的Debug信息
此按鈕,表示是否捕獲一般Win32應(yīng)用,也就相當(dāng)于我們的應(yīng)用的Debug信息
注意:只有調(diào)用了WinDebug中方法的地方的輸出Debug信息才能被DebugView捕獲。
再來看看捕獲的應(yīng)用信息:
將打開兩個(gè)按鈕的叉叉去掉,就會(huì)看到DebugView可能輸出一些信息。
如下圖:
這些都是系統(tǒng)中的應(yīng)用調(diào)用WinAPI所輸出的Debug信息。但是只有紅色部分是我們的Demo所輸出的信息。
此時(shí)我們可以新建過濾器,只查看我們自己想看到的信息
打開后我們看到下圖
在Include和Exclude,分別表示Debug Print的內(nèi)容“包含”“不包含”的字符串。
例如在include中輸入:GTA
點(diǎn)擊OK后
DebugView就會(huì)只顯示GTA開頭的Debug信息,因此在寫程序時(shí),為了監(jiān)控方便,我們可以將Debug信息分類,以不同的前綴或標(biāo)志為約束,統(tǒng)一Debug輸出格式,方便以后排除和捕獲系統(tǒng)異常等情況。
Exclude與之相反,這里不介紹了。
另外說說,這個(gè)按鈕表面顯示的記錄條數(shù)。
3.遠(yuǎn)程捕獲
可以在本機(jī)調(diào)試捕獲服務(wù)器上的Debug信息。
在服務(wù)器上新建dbgView.exe程序的快捷方式
新建dbgView.exe程序的快捷方式
在快捷方式的“目標(biāo)”后鍵入:空格+/c字符。然后確定。
再運(yùn)行快捷方式,服務(wù)器
等待連接
就會(huì)等待連接。
此時(shí)客戶端打開自己的dbgview.exe
點(diǎn)擊connect
點(diǎn)擊connect后,輸入服務(wù)器的IP地址,便連上服務(wù)器了。
這樣,用戶可以在本地直接捕獲服務(wù)器上的Debug信息了。
主要功能就是這些。更多內(nèi)容可看文檔。
另外,如果要在運(yùn)行時(shí)應(yīng)用不輸出debug信息,可以將web.config或app.config中的
設(shè)置為false,然后在調(diào)用WinDebug的地方就不會(huì)再輸出Debug信息了。