1. 程式人生 > >現學現用之windbg的高階玩法(1,3,5,13,14,76,80,81,84,118,119,121,122樓已更新,chm文件整合7篇實戰18個輔助工具)

現學現用之windbg的高階玩法(1,3,5,13,14,76,80,81,84,118,119,121,122樓已更新,chm文件整合7篇實戰18個輔助工具)

windbg用的人很少,通常被用作核心偵錯程式。
這對於windbg來說,確實大大限制了windbg的功能發揮。
因為工作的關係,樓主常常需要遠端除錯和到客戶現場排查問題。需要一款順手的偵錯程式。VC由於太大,安裝也麻煩,不能每次都給給客戶安裝一個VC,OD是一款很好的使用者態偵錯程式,但是對pdb支援的不好,當要排查一些問題(如記憶體洩露、堆疊溢位、死鎖)等問題時,顯得力不從心。最後wdb成了我的得力助手。
用了一段時間後,發現wdb太強大了,除了不具有反除錯功能和介面不太好看外,完全可以勝任各種疑難雜症的排查和除錯。
wdb沒人用,無外乎如下幾點:
1. 介面不友好
2. 命令列操作
3. 命令繁雜,對新手是個考驗
4. 沒有加亮顯示
5. 不具有反除錯功能
介面不友好是對OD而言,當然與VC相比也很遜色。命令列操作其實是他的一大特色,也是其最為出彩的地方。我前段時間看到看雪已經有wdb加亮外掛放出,用了一下,很好用

寫作本文目的
1. 感受一下windbg的魅力
2. 介紹各種命令的用法(不是對幫助文件的翻譯,告訴你命令在什麼時候怎麼用)
3. 介紹使用wdb排查像訪問異常、緩衝區溢位、死鎖、記憶體洩露、控制代碼洩露等思路和方法
PS:
1. 我是使用wdb時間不長,經驗不足,有描述不正確和不足的地方請指正
2. 本文樓主也是邊學邊寫,最後形成一個wdb參考資料文件。也是為了方便自己以後查閱
3. 本文持續更新。主要包含命令詳解篇應用實戰篇,並持續釋出chm格式文件