Isolating Obfuscation Errors
To find out why an obfuscated assembly doesn't work, the easiest way is to isolate the specific features and classes/members that are causing the problem.
Please follow these steps to isolate obfuscation problems:
Step A: Isolate features
- First we need to find out which of the features in CodeFort are causing the problem. Start disabling the different features (Whole Assembly Encryption, XAML Obfuscation, Anti Decompilation, Obfuscation) and test each time if the change made your assembly work again.
- Continue disabling features until your assembly works.
- Now it works, you can begin enabling features again up until the point where it breaks again. You should now know exactly which features are causing the problem.
Step B
Depending on which feature you found out was causing the problem, follow the corresponding step below:
- Name Obfuscation: Continue with either Step B1 or Step B2 below.
- XAML/BAML Obfuscation: Continue with either Step B1 or Step B2 below.
- Whole Assembly Encryption: Continue here.
- Any other feature: Consider deselecting this feature, or contact support (at) codefort.org.
Step B1: Isolate Obfuscation Issues
If your previous analysis unveiled that the Name Obfuscation and/or the XAML/BAML Obfuscation feature were part of the problem, you should follow these steps to isolate the types/members that are causing the problem:
- Use the Obfuscation Settings page to do a manual exclusion of all types (also manually excluding members) that you suspect are causing the problem.
- Continue excluding types and their members until the app works as well as when non-protected.
- Once it works, you can start clearing the manual settings on the types and members that you manually excluded.
- After a little while you end up with a small set of types/members that are excluded. If this is done systematically, it does not have to be that time-consuming.
Step B2: Debug Obfuscation Issues
Another way to find Obfuscation errors is to debug the obfuscated assembly, and analyze the exceptions that occur. To do this, please follow the guidelines contained in the following articles:
Add comment

User Comments