Profiler is not resolving symbols
When using the profiler in sampling mode (I cannot get it to work in instrumentation mode; see my previous post), I cannot get symbols for Microsoft libraries to resolve in the report. I have done the following:
- Ticked the option to serialize symbols to the report file.
- Set up my symbol settings in VS Tools --> Options... --> Debugging / Symbols: added http://msdl.microsoft.com/download/symbols and cached to a local directory. Cleared the "Search the above locations..." checkbox.
Symbols for my user code resolve just fine. I have confirmed that I do indeed have a cached copy of the Microsoft symbols in my local cache directory. The Microsoft symbols seem to resolve just fine in the debugger. I have read in other posts that the profiler uses essentially the same mechanism to resolve symbols as the debugger, so if the debugger can resolve them, the profiler should also be able.
The application I am profiling is a C# executable that calls native (C++) DLLs. All of the DLLs are user code, developed within the same VS solution.
Once again, I am running VS Team System 2008 9.0.30729.1 SP 1 and .NET 3.5 SP 1 on Vista Enterprise 64-bit.
Once again, any help is greatly appreciated!- Edited bysbaird Monday, July 20, 2009 5:07 PMtypo
All Replies
- Hello,
As I understand, the issue here is, after we profiling in Sample mode, we could not open the report file (.vsp file), and this issue is related to the symbols from Microsoft Libraries. If I misunderstand you, please correct me.
Could I ask a few questions if you don't mind?
1. Why do you think the issue is related to the Symbol files from Microsoft Libraries?
2. Is there any error message or any output indicated that?
3. If we add http://referencesource.microsoft.com/symbols to the location box before http://msdl.microsoft.com/download/symbols, how about the issue?
4. If we let the symbol file (.pdb file) loacation box blank, does the issue appear?
Best regards,
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
If you have any feedback, please tell us.
Welcome to the All-In-One Code Framework! Thanks again Roahn, for your fast reply.
I am able to open the report (.vsp) file. To answer your questions:
1. I don't know what the issue is. As I said, I have the symbol files from Microsoft cached on my local HDD. They resolve in the debugger.
2. When the profiler report is opening, the "performance console" in VS outputs several lines like:
Symbol Engine: Failed to load matching symbols for module 'C:\Windows\syswow64\USER32.dll'
Symbol Engine: Failed to load matching symbols for module 'C:\Windows\system32\nvd3dum.dll'
etc., etc., etc.3. I just tried this. Same results.
4. This is how it was set up for weeks. Same results.
So, in my profiler reports, I see mscorwks.dll, mscorjit.dll, ntdll.dll, wpfgfx_v0300.dll, USER32.dll, and several more with unresolved symbols ("unknown lines" in "Modules View," and just the DLL listed many times in the "Call Tree" view.) I do seem to have symbols for MSVCR90.dll, but not MSVCR80.dll.
Thanks for any further help you (or anyone else) can provide...- I had the same problem. The only way I found to resolve it, is to copy all .pdb files from Symbol cache directories next to the .vsp profile file. If not working try to move them next to the .psess profiler session file (I have both in the same directory).


