[1] Visual Assist的智能提示功能實在是太強大了,估計大家都應該裝了吧! 唯一不太爽的是Visual Assist對C++ STL和Templates的解析還是
有待改進。
[2] WndTab http://www.wndtabs.com Visual C++ 6.0的編輯視窗沒有分頁顯示, 想在開啟的多個檔案中切換非常麻煩, WndTab為VC的
編輯視窗加上了Tab, 現在點擊每個檔案的Tab就可以方便的切換到該檔案進行編輯了,強烈推薦。
[3] BoundsCheck CompuWare的調試工具,可以整合到Visual C++中。 BoundsCheck可以協助我們發現程式中隱藏的bug,比如Memory
Leak等。 預設安裝後,BoundsCheck的設定是每當發現調試狀態下啟動並執行程式中的bug就馬上中斷執行,返回Visual C++視窗報告bug,但是
很多BoundsCheck發現的bug都是一些程式隱患,但不影響當前程式運行,所以有些討厭。可以在BoundsCheck的工具列中將立即報告錯誤按鈕
釋放,以後我們就可以不被BoundsCheck打擾,而是每次調試後得到一份BoundsCheck的bug匯總報告! 其他工具
[4] 介面庫Xtreme Toolkit http://www.codejock.com 和Xtreme Toolkit類似的還有BCG Controls,但是我覺得Xtreme Toolkit更好用一些
它們都提供了一整套功能強大、非常漂亮的控制項,協助我們輕鬆建立出很Cool的程式介面,從而把主要精力放到程式功能上。
[5] IconXP http://www.aha-soft.com 製作程式的各種表徵圖,如果利用Visual C++或者Delphi等內建的資源編輯器,只能編輯256色的表徵圖,
非常麻煩而且基本無法編輯出XP風格的表徵圖來。利用IconXP可以輕鬆創作出很Cool的表徵圖來,而且IconXP能夠從各種檔案中提取出表徵圖檔案。 寫
了這麼多,累了,明天繼續……
[6] OllyDbg http://home.t-online.de/home/Ollydbg/ 這是一個很Cool的靜態反組譯碼工具,並且能夠在反組譯碼
代碼的基礎上對應用程式進行調試。 個人認為OllyDbg比很多crack網站上推薦的WDASM好用,因為OllyDbg加入了很多對反組譯碼代碼的進一步分
析功能,並加上相應的注釋,非常方便。 比如應用程式在某處調用了Windows API函數,該處後面就會出現注釋告訴你這裡調用了哪個Windows
API函數,更酷的是連給該Windows API傳遞參數的地方也會加上注釋說明。 另外由於很多應用程式都是使用Visual C++編寫,而Visual C++生
成的彙編代碼有一定的格式(如果沒有選擇某些最佳化功能的時候),所以OllyDbg甚至會將一些彙編代碼對應的C語言代碼以注釋的方式說明。
OllyDbg本身的調試功能也很強大,多用幾次就會得心應手。 總而言之,OllyDbg絕對是在沒有原始碼的情況下分析應用程式的必備工具。
CodeProject上有兩篇文章FreeCell & Hearts, behind the scenes和Minesweeper, Behind the scenes,作者就是以OllyDbg為
工具探索到了Windows附帶的掃雷遊戲、空當接龍遊戲的底層資料結構,從而寫出了直接讀取這些遊戲記憶體的程式,我稍加修改就做了一個
自動掃雷的程式,呵呵。
[7] DebugView 看過《深入淺出MFC》嗎,候捷先生在書的最後提到了一種追蹤TRACE(實際上是Windows函數OutputDebugString)的工具
有了該工具,你就可以在應用程式運行時通過它觀察追蹤應用程式內部的運行情況,只要你在程式中加了足夠多的TRACE宏,並且以Debug版本編譯
特別是對於程式邏輯複雜(Debug幾次就暈了),或者涉及到圖形介面重新整理或顯示的程式(如果用一台電腦調試,在Visual C++環境和被偵錯工具
之間切換,你很難看到正確的結果),或者非常耗費系統資源的程式(在用Visual C++調試運行,就更費勁了),巧妙的使用這類工具可以高效的解
決問題。 說實話,Paul DiLascia等大師固然提供了這些工具,但是這些大師只是為了展示某些技術,所以他們提供的工具都只有準系統。
而DebugView是同類工具中最為優秀的一個,適用範圍廣,能夠定製各種過濾條件,讓你只看到關心的TRACE輸出資訊,而且可以定製高亮顯示
的內容等等,非常方便。 DebugView是完全免費的!
[8] Disk Monitor File Monitor Register Monitor Port Monitor 這系列Monitor工具分別對系統中的磁碟、檔案、註冊表、連接埠的變化更改進
行即時監控並記錄下來,對於我們追蹤程式對系統進行了那些更改特別有用。 SysInternals上面還有很多工具,都是免費的,有些還提供原始碼。
上面是我經常使用的開發協助工具輔助,有些可能一時沒有想到,待以後慢慢在這裡補全。 因我主要使用Visual C++進行開發,所以介紹的工具也都
主要是和Visual C++相關的,希望有朋友能夠將其他主要開發工具的好的配套協助工具輔助也來個介紹。