• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大漠落日

            while(!dead) study++;
            posts - 46, comments - 126, trackbacks - 0, articles - 0
              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            VS2005遠(yuǎn)程調(diào)試攻略

            Posted on 2011-05-24 15:23 亂78糟 閱讀(5568) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 重要資料
            怎么說呢,介紹遠(yuǎn)程調(diào)試的文章網(wǎng)絡(luò)上其實(shí)有不少,我這里也會(huì)涉及到,但會(huì)更加的詳細(xì)和細(xì)致,比如win7(32、64)系統(tǒng)下的調(diào)試,家庭版的調(diào)試,以及一些常見問題的原因和解決辦法。


            一般我們都會(huì)這么操作,比如在VISTA之前的系統(tǒng)如,2K, XP, 2003下(這里都是32位):

            (1) 遠(yuǎn)程端:安裝VS2005光盤"\vs\Remote Debugger\x86\rdbgsetup.exe"。或者直接運(yùn)行或copy本地端的: "Program Files\Microsoft Visual Studio 8\Common7\IDE\Remote Debugger\x86"
            (2) 遠(yuǎn)程端:“本地安全策略 - 安全選項(xiàng) - 網(wǎng)絡(luò)訪問:本地帳戶的共享和安全模式”改為:經(jīng)典-本地用戶以自己的身份驗(yàn)證。
            (3) 遠(yuǎn)程端:?jiǎn)?dòng)Remote Debuger,從“工具 - 選項(xiàng)”中將身份驗(yàn)證模式改為“無(wú)身份驗(yàn)證,允許任何用戶進(jìn)行調(diào)試”。
            或者直接用命令行:"\ msvsmon.exe" /noauth /anyuser /nosecuritywarn,可以建個(gè)快捷方式以方便運(yùn)行。
            (4) 將需要調(diào)試的程序debug版本和相應(yīng)的pdb文件(包含調(diào)試信息)拷貝到遠(yuǎn)程主機(jī),啟動(dòng)該debug版本程序。
            (5) 本地:在VS2005中,“工具”--“附加到進(jìn)程”,傳輸選“遠(yuǎn)程”,限定符輸入遠(yuǎn)程端的主機(jī)名或IP地址,回車,選擇我們需要調(diào)試的應(yīng)用程序。如果一切正常,那么我們現(xiàn)在可以像調(diào)試本機(jī)程序一樣調(diào)試遠(yuǎn)程主機(jī)上運(yùn)行的debug版本了。

            細(xì)節(jié)和常見問題:

            (1)如果是64位系統(tǒng),請(qǐng)選擇x64,即\vs\Remote Debugger\x64\rdbgsetup.exe;
            (2)不要因?yàn)檫h(yuǎn)程主機(jī)是64位的,就使用64位的remote debugger,它必須和你的應(yīng)用程序匹配,即統(tǒng)一為32位,或64位。
            (3)如果是家庭版,控制面板管理工具里是沒有“本地安裝策略”這個(gè)工具的,那么只能通過修改注冊(cè)表來(lái)實(shí)現(xiàn),注冊(cè)表項(xiàng):[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa], 找到“forceguest”,如果它的值為1,即dword:00000001,表示“僅來(lái)賓 - 對(duì)本地用戶進(jìn)行身份驗(yàn)證,其身份為來(lái)賓”(這個(gè)描述win7和之前的系統(tǒng)稍有不同),如果值為0,即dword:00000000,表示“經(jīng)典 - 對(duì)本地用戶進(jìn)行身份驗(yàn)證,不改變其本來(lái)身份”。我們需要的值為0。
            (4)win7/vista下遠(yuǎn)程連接到目標(biāo)主機(jī),已經(jīng)成功顯示了進(jìn)程列表,但是attach待調(diào)試程序時(shí)候本地出現(xiàn)提示“Unable to attach the process - 系統(tǒng)找不到指定的文件 ”,這是因?yàn)閞emote debugger權(quán)限不足導(dǎo)致,以管理員權(quán)限重新啟動(dòng)remote debugger解決該問題。
            (5)成功attach到遠(yuǎn)程主機(jī)目標(biāo)程序,但是本地?zé)o法下斷點(diǎn),或者斷點(diǎn)下了之后處于不可被觸發(fā)狀態(tài)。解決辦法:rebuild整個(gè)工程,然后將重新編譯的程序和pdb文件覆蓋遠(yuǎn)程主機(jī)相應(yīng)文件(這個(gè)和本地調(diào)試完全一樣是不:P)。
            (6)debug版本的程序拷到遠(yuǎn)程主機(jī)之后,無(wú)法運(yùn)行,那好因?yàn)槿鄙傧鄳?yīng)的debug版本動(dòng)態(tài)庫(kù)和相關(guān)版本配置文件(可以用VS附帶工具Depends查看)。以MFC程序?yàn)槔枰缦虏僮鳎?br />
            1)將VS目錄下Microsoft Visual Studio 8\VC\redist\Debug_NonRedist\x86下的三個(gè)目錄相應(yīng)的動(dòng)態(tài)庫(kù)拷貝到遠(yuǎn)程主機(jī)應(yīng)用程序根目錄下或者c:\windows\system32\目錄下。
            2)在c:\windows\winsxs\目錄下找到編譯主機(jī)vs2005版本匹配的目錄:Microsoft.VC80.DebugCRT、Microsoft.VC80.DebugMFC,將他們拷貝到目標(biāo)主機(jī)c:\windows\winsxs目錄下。在將本地winsxs\Manifests\目錄下的幾個(gè)相應(yīng)文件拷貝到目標(biāo)主機(jī)這個(gè)目錄下。最后將本機(jī)winsxs\Policies\目錄下的相應(yīng)子文件拷貝到相同目錄下。這個(gè)鏈接說的更加的詳細(xì):http://wenwen.soso.com/z/q165079372.htm
            注意:win7/vsita下winsxs是沒有權(quán)限往里面寫東西的,所以要更改權(quán)限,這個(gè)可以網(wǎng)上搜索,我就不詳述了。

            現(xiàn)在已經(jīng)可以正常運(yùn)行debug版本的程序了,即便該主機(jī)沒有開發(fā)環(huán)境:)。


            PS: 一直不會(huì)用CPP BLOG的編輯器,真是煩惱- -!              
            色成年激情久久综合| 久久精品9988| 亚洲精品无码久久毛片| 伊人 久久 精品| 中文字幕无码精品亚洲资源网久久| 久久精品无码一区二区app| 亚洲欧美日韩精品久久亚洲区 | 亚洲欧美日韩中文久久| 无码国内精品久久人妻蜜桃| 久久丫精品国产亚洲av不卡| 久久精品国产亚洲AV无码偷窥| 久久精品免费一区二区三区| 久久精品国产第一区二区| 天天影视色香欲综合久久| 久久ZYZ资源站无码中文动漫| 国产69精品久久久久99| 亚洲欧美国产精品专区久久 | 国产精品18久久久久久vr| 亚洲精品无码久久毛片 | 亚洲国产精品久久久久婷婷软件| 久久亚洲精品无码播放| 国产三级久久久精品麻豆三级| 成人精品一区二区久久| 亚洲AV日韩精品久久久久| 久久有码中文字幕| 伊人色综合久久| 国产成人精品久久二区二区| 久久婷婷五月综合成人D啪| 精品久久久久久国产免费了| 久久99中文字幕久久| 久久国产热精品波多野结衣AV| 久久精品中文字幕一区| 久久影视国产亚洲| 久久成人国产精品一区二区| 国产美女久久精品香蕉69| 久久发布国产伦子伦精品| 精品久久久久久国产| 欧美久久久久久| 亚洲国产综合久久天堂| 2021国产精品午夜久久| 久久亚洲国产精品123区|