• <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
            久久影视国产亚洲| 久久精品国产亚洲AV无码麻豆| 国产精品99久久久久久宅男| 国产一区二区三精品久久久无广告| 日韩中文久久| 久久国产精品99国产精| 久久se精品一区精品二区国产| 久久99热这里只有精品国产| 久久精品国产91久久麻豆自制| 欧美国产成人久久精品| 伊人久久综在合线亚洲2019| 少妇内射兰兰久久| 无码任你躁久久久久久老妇App| 久久免费精品一区二区| 色欲av伊人久久大香线蕉影院| 国产精品永久久久久久久久久| 综合久久国产九一剧情麻豆| 日本加勒比久久精品| 国产成人精品久久亚洲| A狠狠久久蜜臀婷色中文网| 久久青青草视频| 中文字幕无码久久精品青草| 精品久久久无码中文字幕| 久久久久久久尹人综合网亚洲| 久久精品99久久香蕉国产色戒| 国色天香久久久久久久小说| 亚洲国产成人精品久久久国产成人一区二区三区综 | 色妞色综合久久夜夜| 久久久黄色大片| 色综合久久88色综合天天 | 99久久国产综合精品网成人影院| 久久99精品久久久久子伦| 久久精品九九亚洲精品| 久久香蕉超碰97国产精品| 久久精品人人槡人妻人人玩AV| 久久久无码精品亚洲日韩蜜臀浪潮| 久久精品国产99久久久古代| 亚洲午夜久久久影院| 久久亚洲欧美国产精品| 久久久久高潮毛片免费全部播放 | 久久久青草久久久青草|