Introduction
Using the GUI
Understanding Obfuscation
Understanding Checks
Understanding Analytics
Attributes
Advanced Topics
With the Debugging Check, Dotfuscator injects code that detects the use of a managed debugger at runtime.
Debugging Checks can be added to your code by following the Check configuration instructions, using the DebuggingCheckAttribute
in step 2.
In the output assemblies, whenever a method that was annotated with DebuggingCheckAttribute
is called, the injected code will first check if a managed debugger is attached to the application and, if configured, notify the application code of the result.
If the Check detected a debugger, it will transmit Check Telemetry and perform a Check Action, if these are configured.
Dotfuscator Community Edition (Dotfuscator CE) can inject Debugging Checks into all .NET assemblies except for the following:
.dll
assemblies (this restriction does not exist in the Professional Edition)To test how the Debugging Checks injected into your application react to a debugger's presence, run the modified application and attach to it with a debugger, such as Visual Studio or MDbg.
When a method that was annotated with DebuggingCheckAttribute
is called by the application, the Debugging Check will activate.