Dotfuscator は、すべてまたは一部の設定を記述した構成ファイルを適用した上で、コマンド ラインでのオプションの指定によって構成ファイルの設定を補完またはオーバーライドできるという優れた特徴を備えています。そのため、標準的な構成ファイルをテンプレートとして使用しながら、その設定を必要に応じてすばやく調整することができます。
コマンド ライン オプション | 構成ファイル オプション | 適用方法 |
---|---|---|
/in <file>[,<file>] | "input" セクション | 追加 |
/out:<directory> | "output" セクション | オーバーライド |
/honor:[on|off*] | "inputassembly" セクション | オーバーライド |
/strip:[on|off*] | "inputassembly" セクション | オーバーライド |
/disable | "renaming"、"controlflow"、"stringencrypt"、および "removal" の各セクションで "disable" オプションを設定 | オーバーライド |
/rename:[on:off] | "renaming" セクションで "disable" オプションを設定 (または設定を削除) | オーバーライド |
/mapout:<file> | "mapoutput" セクション | オーバーライド |
/clobbermap:[on|off] | "mapoutput" セクションの "overwrite" 属性 | オーバーライド |
/keep:[namespace|hierarchy|none] | 名前変更オプションの "keepnamespace" または "keephierarchy" を設定 (または設定を削除) | オーバーライド |
例 :
次の例では以下の構成ファイルを使用します。この構成は、出力割り当てファイルを指定して名前の変更を有効にしています。この構成ファイルは、コマンドにおいて "myconfig.xml" として参照されています。
<?xml version="1.0"?> <!DOCTYPE dotfuscator SYSTEM "http://www.preemptive.com/dotfuscator/dtd/dotfuscator_v2.1.dtd"> <dotfuscator version="2.1"> <renaming> <mapping> <mapoutput overwrite="true"> <file dir="${configdir}\reports" name="MyMap.xml"/> </mapoutput> </mapping> </renaming> </dotfuscator>
dotfuscator -in:my.dll myconfig.xml
このコマンドは、my.dll をライブラリ モードの入力アセンブリとして指定し (拡張子が DLL であるため、既定値としてライブラリ モードになります)、それに対して、構成ファイルで設定されている名前変更オプションを適用します。この例の場合、制御フローの難読化、文字列の暗号化、および不要コードの除去は構成ファイルで暗黙的に無効化されているので、これらの処理は実行されません。
出力ディレクトリは構成ファイルとコマンド ラインのいずれでも指定されていないため、出力 DLL は ".\Dotfuscated" ディレクトリに格納されます。
dotfuscator -in:my.dll -keep:namespace myconfig.xml
このコマンドでも同様に my.dll を入力アセンブリとして指定しています。さらに、このコマンドでは名前変更の処理において名前空間を保持するように指示するオプションも指定されています。
© 2002-2007 PreEmptive Solutions. All rights reserved.