There is no PDB file for ntdll.dll

Trying to debug a dll project that I am developing. I got a message box Debugging information for 'ntdll.dll' cannot be found or does not match. Cannot find or open the PDB file Debugging information for 'ntdll.dll' cannot be found or does not match. Cannot find or open the PDB file , trying to load this DLL using a host application. How to solve this problem?

After some experimentation and installing VS2010 to get characters from the server, I have the following message during dll build:

DEMO.exe ': Loaded "C: \ Windows \ System32 \ ntdll.dll", symbols loaded (source information deleted). DEMO.exe ': Loaded' C: \ Windows \ System32 \ mscoree.dll ', uploaded characters (source information deleted). DEMO.exe ': Loaded "C: \ Windows \ System32 \ kernel32.dll", symbols loaded (source information deleted). DEMO.exe ': Loaded' C: \ Windows \ System32 \ KernelBase.dll ', loaded characters (source information is disabled).

But nevertheless I designed the message during debug.

+6
source share
1 answer

There are several options.

  • Download the character pack provided by Microsoft. This will load the PDB for all system libraries. Extract it to "c: \ symbolcache"
  • Set the symbol path to SRV * c: \ symbolcache * http://msdl.microsoft.com/download/symbols. In this case, it will load the PDB files and store them in "c: \ symbolcache" if not.

Then you need to set "c: \ symbolcache" as the path to the symbol file in any emergency dump analysis tool that you use.

+1
source

All Articles