You can run NRObfuscator.exe without arguments to receive help- how to use command line for the obfuscation:
Generating request activation code:
Usage: NRObfuscator.exe /REG
Obfuscation:
Usage: NRObfuscator.exe options /SRC=inputfile(.dll, .exe files) /OUT=outputpath /KEY=keyfile /PATHS=searchpath1;searchpath2
Usage: NRObfuscator.exe /SRC=inputfile(.iloprj files)
options - the string containing obfuscation options [optional, default=D3]:
S - Silent mode
Assembly members for obfuscation:
[list]
N - Namespaces - obfuscate namespaces[/*:m]
T - Types - obfuscate types (exclude interfaces(see I option))[/*:m]
I - Interfaces - obfuscate interfaces[/*:m]
M - Methods - obfuscate methods[/*:m]
L - Fields - obfuscate fields[/*:m]
P - Properties - obfuscate properties[/*:m]
E - Events - obfuscate events[/*:m]
R - Parameters - obfuscate parameters[/*:m]
B - Public - obfuscate public members[/*:m]
A - Use obfuscation control attributes[/*:m]
U - Obfuscate resources that connected to obfuscated type. Not connected to type resources does not obfuscated)[/*:m]
V - Obfuscate overridable members (methods, properties(if contains overridable methods)))[/*:m]
C - Enums - obfuscate Enum classes[/*:m]
S - Structures - obfuscate Structure classes[/*:m]
D - [Predefined] Default obfuscation (NTMLIRAUV) [/*:m]
F - [Predefined] Full obfuscation (D+BPE = NTMLPEBIRAUV) [/*:m]
K - [Predefined] KeepsSerialization obfuscation (D+BS = NTMLBIRAUVS)[/*:m][/list:u]
Namespaces restructuring:
[list]
* - All obfuscated types in one namespace[/*:m]
^ - Each obfuscated type in one namespace[/*:m][/list:u]
AntiILDASM mode:
[list]
% - Simple(antiILDASM.True), [/*:m]
# - Complete(antiILDASM.Complete)[/*:m][/list:u]
Incremental obfuscation:
[list]
5 - use incremental obfuscation[/*:m][/list:u]
String protection mode:
[list]
8 - Hide strings(without encryption) [/*:m]
9 - Encrypt strings[/*:m][/list:u]
Name generation mode:
[list]
1 - Numbers [/*:m]
2 - Alphabetic [/*:m]
3 - AlphaNumeric [/*:m]
4 - Use non-displayable characters (recommended, default)[/*:m][/list:u]
Mode 4 generates non-displayable names, recommended to protect from preview in ILDASM and most of known assembly browsers and linkage by AL.exe
The order of generation mode and members parameters in obfuscation options is not important.
/SRC=inputfile - path to file for obfuscation.
Warning: In case of using Spices.Project (.iloprj) as input file, options, output, keyfile will be ignored
/OUT=outputpath - path to output resulting obfuscated file.
Warning: If /SRC is Spices.Project (.iloprj), its SaveToDirectory will overriden with /OUT argument value.
/KEY=keyfile - path to strong name key file (.snk file), if there is need to sign the assembly.
/PATHS=searchpath1;searchpath2 - search paths that will be used to resolving assemblies.
Example:
NRObfuscator.exe D*1 /SRC=your.dll /OUT=..\new
NRObfuscator.exe /SRC=your.exe /OUT=D:\TMP\NEW /KEY=yourexe.snk
NRObfuscator.exe F5 /SRC=your.exe;somedll.dll /OUT=D:\TMP\NEW /KEY=yourexe.snk /PATHS=C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
NRObfuscator.exe 2NTMLPER /SRC=your.dll /OUT=D:\new /KEY=yourdll.snk
NRObfuscator.exe /SRC=your.iloprj /PATHS=C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
Also you can use OptionsGUI.exe utlity for creating Spices.Project for the obfuscation with console mode Spices.Obfuscator.