Setting these options tells Dotfuscator to create a symbol file in PDB format for each output assembly. Debuggers use these files to provide useful information in a debugging session. Typically, they contain information such as line numbers, source file names, and local variable names. The PDB files are placed in the output directory with the output assemblies.
This option is useful for assemblies that already have associated PDB files (i.e. you told your compiler to generate debugging symbols). In this case, Dotfuscator uses information in the original PDB file to create the new PDB file for the obfuscated version. In this case, the line numbers and source file names correspond to the information in the original assembly.
If an input PDB file is missing, then the PDB files created by Dotfuscator will contain line numbers that correspond to the low level Microsoft Intermediate Language instructions in the obfuscated assembly.
|Debug, Debuglmpl, DebugOpt, and Pdb Global Options||
<global> <!-- Disable JIT optimization,create PDB file, use sequence points from PDB --> <option>debug</option> <!-- Disable JIT optimization,create PDB file, use implicit sequence points --> <option>debugimpl</option> <!-- Enable JIT optimization, create PDB file, use implicit sequence points --> <option>debugopt</option> <!-- Create the PDB file without enabling debug info tracking --> <option>pdb</option> </global>
DebugImpl, DebugOpt and Pdb global options are supported for assemblies targetting .Net 2.0 and above. If these options are used with assemblies targeting .Net 1.0 or 1.1, Debug global option will be used instead.