WinDbg does not load a character file created using the same source, but built at a different time than the original

We released the product (C # .NET library) and did not save the pdb library file, suggesting that we can always generate symbol files using the same source code.

Now we want to analyze the crash dump (mini-dump) file of an application using our library. Since we did not store the pdb file, I created a new one using the same source code (using the same tag in SVN). Then I tried WinDbg and provided the pdb file, but the debugger didn't like it.

Since the source code is the same, I think the only difference is the build date (we use the same machine for releases). Can this really cause the debugger to not load the symbol file? How does WinDbg identify a character file?

If I am sure that the symbol file is identical to the original (except for the date), is there a way to force WinDbg to load the symbol file?

Thanks.

Note. If I create a new release and artificially create a dump file, the characters load properly.

+3
source share
2 answers

Restoring without changing the sources will change the pdb file. See John Robbins PDB FILES Blog Entry : WHAT EVERY DEVELOPER NEEDS TO KNOW for more details.

WinDbg, , . ( ) WinDbg:

SYMOPT_LOAD_ANYTHING

, .

. , , .symopt + 0x40 .symopt-0x40 .

+6

" ?"...

: , + pdb, GUID. PDB GUID .

0

Source: https://habr.com/ru/post/1721917/


All Articles