The Config Editor is Dotfuscator's graphical user interface for creating, editing, and running Dotfuscator configurations.
The Config Editor provides access to Dotfuscator's protection features through a series of editors that allow you to configure obfuscation, checks, rules, and other protection settings without manually editing configuration files.
This workflow is recommended if you are new to Dotfuscator, want to explore protection features interactively, or prefer a graphical interface for managing protection settings.
When to Use the Config Editor
Use the Config Editor if you:
- Are learning how Dotfuscator protection works.
- Want to configure protection through a graphical interface.
- Need to create or modify a Dotfuscator configuration file.
- Want to review protection settings before integrating Dotfuscator into an automated build process.
You may prefer MSBuild or the Command Line Interface if you need fully automated protection as part of your build process.
How the Config Editor Works
The Config Editor organizes protection settings into a set of specialized editors. These editors allow you to configure:
- Input and output assemblies.
- Renaming settings.
- Control Flow settings.
- String Encryption settings.
- Resource Encryption settings.
- Checks and responses.
- Rules and exclusions.
- Additional protection features.
When you save your work, Dotfuscator stores the settings in a configuration file that can be used by the Config Editor, MSBuild, or the Command Line Interface.
Basic Workflow
To protect an application using the Config Editor:
- Publish your source on Release mode.
- Open the Config Editor in one of the following ways:
- Select the Dotfuscator Pro Config Editor shortcut from the Windows Start Menu.
- Run dotfuscatorUI.exe directly from the installation directory.
- Go to the Input tab and select the Add New Input icon on the toolbar.
- Select Browse, navigate to the correct folder, and select the packages or assemblies you want to include.
- Select Open and then OK.
- Go to the Settings tab and navigate to Options.
- Make sure that the features you want to test are enabled.
- Navigate to Properties.
- Review the available properties and make note of the configdir property.
- Navigate to Build Settings.
- Verify that the Destination directory where the application creates the config file is correct. The output directory is set by default to ${configdir}/Dotfuscated.
- Review the tab specific to the feature you want to test to see the default configuration.
- Select the Save icon on the toolbar or select File > Save from the menu to save the changes to the config file.
- Select the Build icon on the toolbar or select Build > Build from the menu to start a Dotfuscator build. The build uses the currently loaded config file, and if there are any unsaved changes, the Config Editor saves them before running the build.
- Navigate to the Output tab to inspect the results after obfuscation.
Browse the tree view and see how Dotfuscator renamed your types, methods, and fields. The new names appear as child nodes under the original nodes in the tree.