命令行选项可以以“/”或“-”字符开头。
Usage: dotfuscator [options] [config_file]
传统选项
下面汇总了传统的命令行选项。
传统选项 | 说明 |
---|---|
/g | 启动独立 GUI |
/i | 仅进行调查 |
/p=<property list> | 指定配置文件中用户定义属性的值。逗号分隔的名称/值对列表(如 /p=projectdir=c:\\temp,projectname=MyApp.exe) |
/q | 安静输出 |
/v | 详细输出 |
/? | 打印帮助 |
[config_file] | 包含运行时选项的配置文件。 |
-v 选项指示 Dotfuscator 在执行过程中提供有关其进度的信息。这里的详细级别在各版本间可能有所不同。
-i 选项指示 Dotfuscator 不要创建任何输出程序集文件。如果配置文件指定了映射文件,则在该文件中可找到运行结果(如果不生成映射,该选项基本上没有任何用处)。
-q 选项指示 Dotfuscator 在运行时根本不必打印输出。该选项适合于包含在应用程序的生成序列中。该选项重写详细模式。
p 选项指示 Dotfuscator 在命令行处设置外部属性。在这里设置属性将重写配置文件的 <properties> 节中指定的这些属性。
<proplist> 是以逗号分隔的名称-值对的列表。例如,属性声明和赋值与 p 选项一起使用时可能类似于如下所示:
/p=projectdir=c:\temp,projectname=MyApp
如果属性包含空格,则可以将其用引号括起来,如下所示:
/p=MyProperty="value has spaces"
属性名称区分大小写。
g 选项指示 Dotfuscator 启动独立 GUI。使用这个选项,您可以按照外部属性和特定的配置文件启动 GUI:
Dotfuscator /g /p=projectdir=c:\temp project_template.xml
如果运行不带命令行参数的 Dotfuscator,也将启动 GUI。
configfile 是每次运行 Dotfuscator 都需要的配置文件。请注意,不要在命令行处输入配置信息或目标程序集。这些信息必须在配置文件中查找。
扩展选项
扩展选项旨在允许从命令行进行基本模糊处理,而无需先创建配置文件。如果将扩展命令行选项用于配置文件,命令行选项则会补充或重写配置文件中的命令。有关更多信息,请参见通过命令行补充或重写配置文件。
扩展命令行选项通过前四个字符识别。
下面汇总了扩展命令行选项。星号表示在缺少某个选项或未指定配置文件时的默认设置。
扩展选项 | 说明 | |
---|---|---|
/in <file>[,<file>] | 指定输入程序集。默认值受程序集文件扩展名控制(EXE 表明私有的;.DLL 表明在库模式中运行)。 | |
/out:<directory> | 指定输出目录。默认值为“.\Dotfuscated”。 | |
/makeconfig:<file> | 将所有运行时选项(来自命令行和配置文件(如果有)的选项)保存到 <file>。 | |
/disable | 无论是否设置其他选项,禁用所有转换 | |
/rename:[on|off*] | 启用/禁用重命名。 | |
/mapout:<file> | 指定输出映射文件。
默认值为“.\Dotfuscated\map.xml”。 | |
/clobbermap:[on|off*] | 指定映射文件的改写模式。 | |
/keep:[namespace|hierarchy|none*] | 指定类型的重命名方案。 |
示例:
dotfuscator -in:my.dll
在启用重命名、控制流、精简和字符串加密的情况下,将 my.dll 作为库进行模糊处理(保留但不精简的可见符号)。因为未指定输出目录,输出程序集被写入名为 .\Dotfuscated 的目录,映射文件被写入 .\Dotfuscated\map.xml。
dotfuscator -in:myapp.exe,private.dll
将 myapp.exe 和私有的 .dll 一起作为独立的应用程序进行模糊处理。即使是 DLL 中的可见符号也进行模糊处理。根据 myapp.exe 中包含的入口点方法启用精简。
dotfuscator -in:myapp.exe -mapo:MyNames.xml
此命令将 myapp.exe作为独立的应用程序进行模糊处理。指定了输出重命名映射。
http://msdn.microsoft.com/zh-cn/library/ms227238(VS.80).aspx