Dotfuscator generates a mapping file that associates original names with renamed names. The map file shows the new names assigned to classes, methods, and fields during renaming.
The map file is essential when debugging applications after renaming, especially when many methods have been overloaded.
You can also use the map file to:
- Decode obfuscated stack traces.
- Perform Incremental Obfuscation.
- Review statistics about the effectiveness of Renaming.
Mapping File Conventions
The elements in the mapping file follow a consistent format.
| Convention | Description |
|---|---|
<newname> element | If a <newname> element is present, the item was renamed. If the <newname> element is absent, the item was not renamed. |
| Nested type names | Nested class names are separated from the parent class using the / character. |
.ctor | Instance constructors are named .ctor. Constructors are never renamed. |
.cctor | Static constructors (also known as static initializers or class constructors) are named .cctor. Static constructors are never renamed. |
Document Type Definition (DTD)
The format of the mapping file is defined by the dotfuscatorMap_v1.1.dtd file.
A copy of the DTD is available at:
www.preemptive.com/dotfuscator/dtd/dotfuscatorMap_v1.1.dtd
The DTD describes the format of the renaming map files produced and consumed by Dotfuscator.