VC++6.0調試篇:遠程調試

轉自http://blog.csdn.net/coding_hello/article/details/3357384

VC開發環境之所以提供遠程調試的能力,是因爲有些情況下單機調試會讓你崩潰掉。。。比如,調試GUI程序的WM_PAINT消息,因爲要單步調試,所以調試器會對界面的重繪產生副作用(Heisenberg不確定性原理)。當然還有些別的情況也適用,比如程序在測試環境運行的好好的,但是在客戶那行爲總是異常,這時候如果可以TCP遠程連接上去維護的話,就能通過遠程調試的特性在出現狀況的系統環境中排錯~

 

        下面來說一下具體的做法。先明確下概念,遠程調試嘛,自然是兩個機器之間調試。程序運行在目標機器上,調試器運行在本機。當然,目標機器上還是要有少許輔助程序才能跟本機的調試器connect上,以便通訊。一般來說,只需要copy四個文件到目標機器上就行了:MSVCMON.EXE、DM.DLL、TLN0T.DLL和MSDIS110.DLL。這四個文件都能在VC6目錄的Common/MSDEV98/Bin目錄下面找到。copy過去之後,運行msvcom.exe,看下圖片~


有個Settings的按鈕,不用管。直接點Connect就行了~

 

接着看看本機這邊調試器的設置。首先設置好遠程調試開關,在Build菜單下有個Debuger Remote Connecting的子菜單,點之。出現個窗口,默認是在Local項,我們要選的是Network(TCP/IP),然後點設定。會彈出一個對話框,輸入目標機器的ip或者機器名,最後點OK就行了。


 

接下來把工程打開,設置最後一步。假設生成的可執行程序名爲RemoteDebug.exe,在目標機器上的路徑爲d:/Prj/Remote.exe,那麼,在本機的Project Settings裏面,選擇Debug頁面的Remote executable path and file name下面的編輯框中輸入目標機器中程序的路徑:d:/Prj/RemoteDebug.exe。注意,這裏寫的是從目標機器的角度所看到的路徑。

 


然後編譯一下程序,把新編譯出來的RemoteDebug.exe複製到目標機器的d:/Prj下面,就可以在本機像平常一樣調試了。

 

 

要注意的事項:

1.要求本機與目標機器上的版本要完全一樣才行。

2.在本機設置遠程調試路徑時一定要填目標機器上看到的路徑,而不是本機看到的網絡路徑

3.調試開始時,會提示些符號信息的東東,都確定就行了

4.遠程調試的設置是全局設置,跟項目無關。實際上,上面提到本機調試器設置時都沒打開工程。所以,當不需要遠程調試時,要從Build菜單下面的Debuger Remote Connecting的子菜單設置回Local模式。否則每次都會問你要遠程的信息噢~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章