• <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 風輕云淡 閱讀(511) 評論(0)  編輯 收藏 引用 所屬分類: Toolkit
            久久精品国产亚洲AV无码娇色| 777午夜精品久久av蜜臀| 久久久久亚洲AV成人片| 国产精品禁18久久久夂久 | 久久精品日日躁夜夜躁欧美| 亚洲国产精品无码成人片久久| 色偷偷偷久久伊人大杳蕉| 99久久免费只有精品国产| 亚洲欧美精品一区久久中文字幕| 精品久久久久久中文字幕大豆网| 久久99国产精一区二区三区| 一本色道久久88综合日韩精品| 久久精品午夜一区二区福利| 久久99精品九九九久久婷婷| 久久久噜噜噜久久中文福利| 久久噜噜久久久精品66| 久久线看观看精品香蕉国产| 97精品国产97久久久久久免费| 久久精品国产72国产精福利| 精品人妻久久久久久888| 久久笫一福利免费导航| 成人精品一区二区久久| 99久久久精品免费观看国产| 久久久久久久久久久| 亚洲精品无码久久久久AV麻豆| 99久久国产亚洲高清观看2024| 久久久免费精品re6| 色综合久久中文字幕无码| 久久久久久伊人高潮影院| 久久久久亚洲AV成人网人人网站 | 国产精品久久永久免费| 日韩精品久久久久久久电影蜜臀| 中文字幕亚洲综合久久菠萝蜜| 久久国产精品国语对白| 国产AV影片久久久久久| 国产免费福利体检区久久| 国产高潮国产高潮久久久91| 精品无码久久久久久久动漫| 国产精品免费看久久久香蕉| 国产视频久久| 久久经典免费视频|