• <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>

            road420

            導航

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統計

            常用鏈接

            留言簿(2)

            隨筆檔案

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            vs2005 調試

            1,斷點設置有技巧:

            1)設置條件斷點,比如i==10,變量改變時斷點;

            2)如何讓斷點在指定的命中次數或者大于某個次數時觸發呢?方法是設定幾個斷點的HitCount,右鍵單擊斷點,在彈出菜單中選擇Hit Count;

            3)When Hit,這個選項可以讓我們在命中斷點后做一些事情,包括輸出一些內容,或者調用宏,比如輸出一個程序中變量的值;

            4)利用斷點的Filter功能,比如我希望斷點只有被機器名為yizhu的機器訪問才能觸發;

            具體參見:一篇介紹VS2005調試斷點技巧的文章

            2. 怎樣判斷加載的dll的正確性?

               調試時,打開Debug->Window->Modules,在窗口中顯示的就是當前進程加載的所有dll及其詳細信息,如果

            斷點無法擊中,可以檢查這里,看是否有匹配的pdb文件或者是加載了錯誤的dll

            3. 已經開始調試的工程加入另外的進程并且調試

               如果你在調試客戶端,但是服務器需要調試,那么使用菜單中的Tools-> Attach to process進行進程掛接,這種方法可以掛接所有windows下的程序,能否調試,就看其是否調試版和有調試用的PDB文件

            4. 同時啟動多進程進行調試

              在Solution的屬性中的Common Properties->Startup Project。選擇Multiple startup projects。這個選項是可以記憶的,下次打開可以直接調試,非常方便

            5.調試Windows Service

             MSDN推薦的方法
            1、調試windows服務的初始化、啟動
              另寫一個程序控制服務的初始化和啟動
              注意:OnStart里寫Log, OnStart里要在30秒返回. 不然啟動就失敗了! 所以OnStart里不要放太多代碼! 可以用異步或線程.
            2、調試windows服務的其他方面
            1 ) 安裝您的服務 : intallutils xx.exe
            2) 可從“服務控制管理器”、“服務器資源管理器”或代碼啟動服務
            3) vs: 設置相關斷點,啟動調試,再在工具欄中選擇 調試->附加到進程..., 選擇您的服務, 確定。
            3、trace方法
            1)添加調試方法

            private static void DebugRun(string[] args)

            2)改寫程序入口為如下:

            public static void Main(string[] args)
            {
            #if DEBUG
            DebugRun(args);
            #else
            /*
            初始化服務
            */
            #endif
            }

            3)加入2種調試代碼

            EventLog.WriteEntry("...");
            System.Diagnostics.Debug.WriteLine("...");

             

            6,遠程調試技術


                顧名思義,就是要調試的程序和調試器本身并不在一臺機器上。由于虛擬機技術的盛行,在虛擬機里面運行待調試的程序,而在外面運行調試器,也是一種比較流行的做法。

            1 為什么使用遠程調試
               遠程調試有如下好處:
                a. 能讓產品運行在一個比較干凈的環境。有的時候如果產品安裝在一個裝好集成環境的機器上,某些bug并不能顯示出來。
                b. 易于部署調試環境。很多產品都非常復雜,比如很多都以service方式運行或者要load很復雜的resource,想在調試器里面直接按F5運行,越來越難。
                c. 對于游戲等全屏方式運行的程序,尤其有用。以前我對調試directx程序非常頭疼。

            2 怎樣使用遠程調試
               使用vs2005進行遠程調試,詳細的介紹參考:http://support.microsoft.com/kb/910448

               簡單的來說,
               1)在被調試的機器上面運行Msvsmon.exe
               2)在調試機器上面運行vs2005,并attach到遠程機器的某個進程

            3 注意事項

               a. 設置好正確的權限
               被調試機器和調試機器需要互相信任的權限(two-way)。如果兩臺機器在同一個workgroup,讓兩臺機器擁有一個相同的賬號和密碼,然后以這個賬號運行。如果兩臺機器在一個域里面,比較簡單,Msvsmon可以設置權限。如果一臺機器在domain里面,另外一臺不在,同樣是讓兩臺機器擁有一個相同的賬號和密碼,然后以這個賬號運行。
               對于Windows XP要特別注意一下,設置匿名的訪問權限才可以work , http://support.microsoft.com/kb/908099

               b.設置好symbol
               什么,你不知道什么是symbol?簡單的來說,symbol file(*.pdb) is for source-level debugging. VS2005就是靠它來調試exe的。默認情況下debug版本生成的,而release版本不生成pdb.設置好 [Project proerties]-[C/C++]-[Debug Information Format]-Program Database就可以了。
               為了減少symbol方面的麻煩,最簡單的做法是讓被調試機器上的binary版本和本地compile出來保持一致。

            posted on 2009-10-23 08:59 深邃者 閱讀(847) 評論(0)  編輯 收藏 引用

            国内精品久久久久久99蜜桃| 国产—久久香蕉国产线看观看| 久久综合一区二区无码| 99久久免费国产精品特黄| 日韩精品无码久久一区二区三| 亚洲乱码中文字幕久久孕妇黑人| 久久婷婷五月综合国产尤物app| 久久久噜噜噜久久熟女AA片| 国产精品成人99久久久久| 久久人人爽人人爽人人av东京热| 久久精品国产精品青草app| 久久99这里只有精品国产| 久久国产精品成人影院| 色婷婷噜噜久久国产精品12p| 久久发布国产伦子伦精品| 日韩精品无码久久一区二区三| 国产精品久久一区二区三区| 久久久久久国产精品无码下载| 成人午夜精品久久久久久久小说 | 欧美噜噜久久久XXX| 久久精品夜色噜噜亚洲A∨| 国产精品久久自在自线观看| 2021国内精品久久久久久影院| 大香网伊人久久综合网2020| 久久久精品人妻一区二区三区蜜桃 | 九九久久精品国产| 久久精品国产久精国产果冻传媒| 四虎国产永久免费久久| 人妻精品久久久久中文字幕一冢本 | 久久乐国产精品亚洲综合| 久久久91精品国产一区二区三区| 精品熟女少妇AV免费久久| 免费久久人人爽人人爽av| 日韩欧美亚洲综合久久影院Ds| 国内精品久久久久久久影视麻豆| 99久久精品免费看国产| 亚洲欧美精品伊人久久| 色综合久久久久| 久久激情五月丁香伊人| 色偷偷88欧美精品久久久| 久久天天躁狠狠躁夜夜avapp|