PDB files - by Leonlchen27

Status : 

  By Design<br /><br />
		The product team believes this item works according to its intended design.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 693208 Comments
Status Closed Workarounds
Type Bug Repros 0
Opened 10/5/2011 9:10:59 AM
Access Restriction Public


I am using Studio2010 Express to create some code, when I use Start without debug, the command window doesn't appear. When I use Start with Debug, system prompt that it can't find or open PDB file. What doesn't this mean?
folliwng is the output result:
'20111005Learning1.exe': Loaded 'C:\Users\12720\Documents\Visual Studio 2010\Projects\20111005Learning1\Debug\20111005Learning1.exe', Symbols loaded.
'20111005Learning1.exe': Loaded 'C:\Windows\System32\ntdll.dll', Cannot find or open the PDB file
'20111005Learning1.exe': Loaded 'C:\Windows\System32\kernel32.dll', Cannot find or open the PDB file
'20111005Learning1.exe': Loaded 'C:\Windows\System32\KernelBase.dll', Cannot find or open the PDB file
'20111005Learning1.exe': Loaded 'C:\Windows\System32\msvcr100d.dll', Symbols loaded.
Sign in to post a comment.
Posted by Microsoft on 11/1/2011 at 12:13 PM
Hi Leonlchen27,

Since we did not get further response I will resolve this bug right now. Let me know if you need further help.

Jeffrey Tan
Visual Studio Debugger
Posted by Microsoft on 10/19/2011 at 10:31 AM
Hi Leonlchen27,

Thanks for contacting us.

Can you be specific about what behavior you are concerning about? Are you concerning the output says "Cannot find or open the PDB file" for ntdll.dll, kernel32.dll and kernelbase.dll?

These three modules/dlls are Windows system dlls which is not written by users but by Microsoft Windows team so you do not have PDB symbol files for them by default. Actually, most of time developer does not want the system module PDB symbol loaded for them because it is not developer's user code and it costs extra time for debugger to download and load symbols. Because your application module 20111005Learning1.exe symbol is loaded you have enough info to perform source mode debugging against your own code. This is by design.

If you do want to load system modules PDB for ntdll.dll, kernel32.dll etc.., you can tell debugger to load from Microsoft public symbol server. There are several approaches:
1. If you just want to manually quickly load symbol for one module, let's say ntdll.dll. You can open Debug->Windows->Modules Window, find ntdll.dll row, right click it and choose "Load Symbols From"->"Microsoft Public Symbol Server"
2. If you want all OS system modules to be loaded automatically for every time you start debugging. You can open Tools->Options->Debugging->Symbols. Select "Microsoft Symbol Server" checkbox and specify cache folder for the downloading symbols. Do remember to select "Automatically load symbols for all modules, unless excluded".

Hope this helps
Jeffrey Tan
Visual Studio Debugger
Posted by Microsoft on 10/14/2011 at 5:46 AM
Thank you for submitting feedback on Visual Studio 2010 and .NET Framework. Your issue has been routed to the appropriate VS development team for review. We will contact you if we require any additional information.
Posted by Microsoft on 10/12/2011 at 5:15 AM

Sorry for bothering. Is there any update?

It would be greatly appreciated if you could provide us with that information as quickly as possible.

Thanks you
Posted by EricLeong [Feedback Moderator] on 10/5/2011 at 10:03 PM
Thank you for reporting this issue. Unfortunately, we are unable to reproduce the issue with the steps you provided.

Could you please provide us with a sample project zip for further investigating?

It would be greatly appreciated if you could provide us this information as quickly as possible.

Thank you
Posted by MS-Moderator01 on 10/5/2011 at 9:42 AM
Thank you for your feedback, we are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)