• <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>
            隨筆 - 132  文章 - 51  trackbacks - 0
            <2012年3月>
            26272829123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(7)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            cocos2d-x

            OGRE

            OPenGL

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            Recently, I was encountering insanely slow project loading times during debugging in Visual Studio 2008. Interestingly, this only happened while loading the project only in debug mode. Also, during the slow symbol loading time, the status bar at Visual Studio 2008 always showed Loading Symbols For ____.Dll.

            To track it down, I enabled logging for the VS 2008 IDE. This can be done by adding the following entries to its configuration file.

            1) Navigate to: C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE  in Windows Explorer

            2) Load devenv.exe.config in text editor.

            3) Add the following entries into it

              <system.diagnostics>
                    <trace autoflush="true" indentsize="4">
                        <listeners>
                           <add name="myListener" 
            type="System.Diagnostics.TextWriterTraceListener, System version=1.0.3300.0, 
            Culture=neutral, PublicKeyToken=b77a5c561934e089" 
            initializeData="c:\myListener.log" />
                           <remove name="Default" />
                        </listeners>
                    </trace>
                </system.diagnostics>
            As per this configuration, the trace log would be saved to C:\myListener.Log. Now I fired up VS 2008 and loaded to project in debug mode to reproduce the issues.
            I also ran couple of unit test cases in debug mode which were also not able to load. I opened the trace log and found these exceptions:

            [V, 5820, 7, 2008/07/04 14:00:33.412] devenv.exe: DIA thew in retrieving symbols: System.Runtime.InteropServices.COMException (0x806D0005): Exception from HRESULT: 0x806D0005

            at Microsoft.VisualStudio.TestTools.Common.Dia2Lib.IDiaDataSource.loadDataForExe(String executable, String searchPath, Object pCallback)

            at Microsoft.VisualStudio.TestTools.Common.DiaHelper.GetSymbolsFileName(String imagePath)

            Confirmed with the issue was related to loading of Symbols. I realized that I had once set up a dedicated symbol directory on machine at C:\symbols to enable debugging with WinDbg.

            I checked the Debugging Options in VS 2008 to see if its trying to load symbols from somewhere else.

            Debug

             

            Then suddenly, I was reminded that I had once set up a environment variable _NT_SYMBOL_PATH to an Internet location while debugging in WinDbg to enable automatic downloading of symbols.

            I originally thought that this setting was only applicable to WinDbg. But I was mistaken. In fact, this setting will be used across by all debuggers (atleast Microsoft debuggers). This is documented here. I was pretty sure that VS 2008 was trying to load symbols from the Internet location and since many of the assemblies in my application didn't had symbols were them, it must have been failing.

            To confirm, I fired My Computer -> Properties -> Advanced -> Environment Variables and cleared out the line

            _NT_SYMBOL_PATH=srv*c:\mysymbols*http://msdl.microsoft.com/download/symbols;cache*c:\mysymbols

            I reloaded the my project in VS 2008 in debug mode and Bingo, the problem was solved :)

            While investigating this problem, I came across many other sources which could cause this issue , so I thought I can post it here for the benefit of community. The credit for these tips goes to Azeem Khan who is working with VSTS team at Microsoft.

            • Make sure that you don't have a symbol path specified in VS under Tools | Options | Debugging | Symbols and also, that you don't have the NT_SYMBOL_PATH environment variable set on your machine. 
            • Verify that you haven't specified any network shares under the same setting to server that do not exist anymore. This will require timeouts. 
            • Specify a local cache for symbols under the same setting. After you have downloaded symbols once from network shares you can disable those locations. Symbol loading will go a lot faster after the first attempt. 
            • Do not specify any symbol lookup paths at all either in environment variable and specify paths in the options page but specify that they be used for manual loading. You can then manually load symbols for modules you care about either via the context menu in call stack or the modules window. 
            • VS 2008 SP1 has made a few improvements in this area. It allows for canceling loading of symbols as it is happening. This will allow you to get to your debug session much faster. Note that this is currently in Beta. 
            • Clearing the breakpoints also serve to solve this problem for some people.

            原文地址:http://blogs.msdn.com/b/mahuja/archive/2008/07/08/resolving-very-slow-symbol-loading-with-vs-2008-during-debugging.aspx

             

            posted on 2012-03-27 17:45 風輕云淡 閱讀(513) 評論(0)  編輯 收藏 引用 所屬分類: Toolkit
            香蕉久久久久久狠狠色| 久久免费视频6| 久久久久久九九99精品| 91久久精品无码一区二区毛片| 99久久久国产精品免费无卡顿| 伊人久久综在合线亚洲2019| 久久久久久久综合日本| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产日韩久久久精品影院首页| 色播久久人人爽人人爽人人片AV| 精品久久久中文字幕人妻| 久久精品国产亚洲AV香蕉| 日本精品一区二区久久久| 嫩草伊人久久精品少妇AV| 亚洲va久久久久| 国产精品日韩欧美久久综合| 久久久久免费看成人影片| 久久婷婷色香五月综合激情 | 99热都是精品久久久久久| 久久久亚洲裙底偷窥综合| 久久99精品久久久久久不卡| 72种姿势欧美久久久久大黄蕉| 精品国产日韩久久亚洲| 久久中文字幕视频、最近更新| 久久国产精品成人免费| 久久99精品国产自在现线小黄鸭| 狠狠色丁香久久婷婷综合_中 | 久久久久人妻一区精品色| 精品久久久久久无码中文字幕| WWW婷婷AV久久久影片| 亚洲精品乱码久久久久久| 久久亚洲中文字幕精品一区四| 成人精品一区二区久久| 99精品久久久久久久婷婷| 亚洲嫩草影院久久精品| 国产成人精品久久二区二区| 2021精品国产综合久久| 99精品国产在热久久| 久久91亚洲人成电影网站| 久久精品一区二区国产| 99久久久久|