Command Line Interface Walkthrough
This section demonstrates how to use the command line interface to obfuscate, using the same settings as in the Standalone GUI Walkthrough. For a complete guide to Dotfuscator's command line, see Command Line Interface Reference in the Dotfuscator User Guide.
You can start Dotfuscator from the command line using the following syntax:
dotfuscator [options] [configfile]
The command line options are documented in the Command Line Options Summary in the Dotfuscator User Guide. The configuration file is an XML document that specifies various options for Dotfuscator. When you ran the standalone GUI and filled in the various dialogs, you were populating a configuration file. All elements of the configuration file are documented in the Configuration File Reference in the Dotfuscator User Guide.
Using Existing Configurations
You can feed previously created configuration files into the command line tool. For example, using the configuration file created by following the instructions in the Standalone GUI Walkthrough, you can obfuscate from the command line using this command:
Using Command Line Switches Only
Alternatively, you can obfuscate on the command line without a configuration file because most of the configuration options are available as command line switches. To get powerful obfuscation, all you need to do is specify the input assembly.
inswitch lets you specify a list of input assemblies separated by commas.
- By default, the output assembly is placed in a subdirectory of the working directory called Dotfuscated. You can override this with the
outcommand line switch.
- By default, Renaming is enabled and the Renaming Map File is called map.xml. It is also placed in the Dotfuscated subdirectory. You can override this with the
- By default, String Encryption, Control Flow, and Removal are turned on.
Using Advanced Command Line Switches
If you want to run the obfuscator from the command line with the same options that you set in the standalone GUI in the previous section, you need a command like this:
dotfuscator /in:GettingStarted.exe /debug:on /v /enha:on
inoption is as before.
voption runs Dotfuscator in verbose mode.
debugoption tells Dotfuscator to generate the debugging symbols for the obfuscated output assemblies.
enhaoption turns on Enhanced Overload Induction.
In the Dotfuscator User Guide: