VC6遠端除錯

2021-05-22 02:00:27 字數 1414 閱讀 2183

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模式。否則每次都會問你要遠端的資訊噢~~~

vc6 控制項

詳見msdn 為控制項新增乙個控制項型變數然後訪問之 edit idc edit1 m edit1 void ctest1dlg onbutton1 也可以直接使用id訪問 cstring str int i getdlgitemtextw idc edit1,str afxmessagebox s...

VC6正在被拋棄?

我還在用的vc6本來早就該公升級了,畢竟vc已經從vc6經歷7.0 7.1 8.0,現在已經到了vc9 vc2008 了。只是我比較戀舊,想想我的機器也受不了ms頻繁的公升級,現在的機器也就免強能跑跑vc6。但是現在c 標準公升級了,gcc也公升級了,vc6 真的已經是必須丟棄的雞骨頭了。vc6自帶...

vc6之串列埠通訊

vc串列埠程式設計方案 mscomm控制項 cserialport類 api 1.新建乙個dialog專案,右擊對話方塊,選擇insert activex control,選擇microsoft communication control,新增串列埠控制項idc mscomm1 2.按ctrl w,...