Is it wise to redistribute the pdb files along with a commercial application?
Occasionally, I'm using the stack trace to get a more detailed error reporting logs from the deployed applications; can this functionality be achieved without relying to those files?
Also, how much hints of the original source code does these files contain? Would it be easier to reverse-engineer my application using it?
It basically adds information for:
which all combined makes reverse engineering very easy for native code.
Luckily you can create a stripped down version of your PDB files which only contains public information with /PDBSTRIPPED parameter.
Oh you edited to add C#/.NET, so I'm not sure if "PDBSTRIPPED" is applicable. However .NET applications are very easy to reverse engineer even without any symbol information. I wouldn't mind including them in a .NET project.
You could try using dia2dump to look at the contents.
The managed .pdb files contain the following information:
Everything else is contained in the binary itself, including the names of all types, members and function arguments.
Source: PDB files: what every developer must know.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With