0

I can't connect the computer to the internet because of security reasons. therefore, I can't use the symbol server. I've installed the symbols pack for windows xp sp2 but some of the PDB's do not match the dlls installed on my machine (I guess it's because of some specific updates that were installed on my machine).

as it seems, the only package that microsoft has published is the complete xp sp2 symbols package. I cannot download specific symbols from the server.

Any suggestions?

Moshe Levi
  • 3,443
  • 21
  • 26

2 Answers2

4

I don't know if this is a possibility depending on the security constraints but it will work if you are allowed to do step 1.

  1. Take a mini-dump of the process you want to debug.
  2. Load the minidump up in WinDbg on a system that you are allowed to connect to the internet.
  3. Configure the symbol path to point to the public symbol server (.symfix+ is your friend)
  4. Reload all the modules by running ".reload /f"
  5. Create a .cab file with all the symbols by running ".dump /m /ba mycab.cab"
  6. Take the .cab file back to the system you want to debug and extract the pdb files into a local folder and point your symbol path to that folder.
Joachim Sauer
  • 302,674
  • 57
  • 556
  • 614
Paul Arnold
  • 439
  • 3
  • 7
  • Great solution. and I don't think that I really need the mini-dump of my original process. It can be any other process as long as I compile it on the same machine and with the same environment. I'll check it. thanks. – Moshe Levi Oct 07 '09 at 15:08
0

I'm not sure where you got your information about what Microsoft has published.

The fact is Microsoft HAS published symbol packages for every version of Windows, and several beta versions.

What doesn't have symbols is 3rd party code, and Office and other Microsoft products that are not bundled with Windows.

Daniel Goldberg
  • 19,908
  • 4
  • 21
  • 29