TextTransform.exe 是一种命令行工具,可用于转换文本模板。 调用 TextTransform.exe时,将文本模板文件的名称指定为参数。 TextTransform.exe 调用文本转换引擎并处理文本模板。 通常从脚本调用 TextTransform.exe。 但是,这通常不是必需的,因为可以在 Visual Studio 或生成过程中执行文本转换。
注释
如果要在生成过程中执行文本转换,请考虑使用 MSBuild 文本转换任务。 有关详细信息,请参阅 生成过程中的代码生成。 在安装了 Visual Studio 的计算机中,还可以编写可转换文本模板的应用程序或 Visual Studio 扩展。 有关详细信息,请参阅 使用自定义主机处理文本模板。
TextTransform.exe 位于以下目录中:
\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE
适用于专业版,或
\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE
企业版。
\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE
专业版,或
\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE
企业版。
Syntax
TextTransform [<options>] <templateName>
参数
| 参数 | 说明 |
|---|---|
templateName |
标识要转换的模板文件的名称。 |
| 选项 | 说明 |
|---|---|
| -输出<文件名> | 将转换的输出写入到的文件。 |
| -r<程序集> | 用于编译和运行文本模板的程序集。 |
| -u<namespace> | 用于编译模板的命名空间。 |
| -我<includedirectory> | 包含指定文本模板中包含的文本模板的目录。 |
| -P<referencepath> | 用于搜索文本模板中指定的程序集或使用 -r 选项的目录。 例如,若要包含用于 Visual Studio API 的程序集,请使用 -P "%VSSHELLFOLDER%\Common7\IDE\PublicAssemblies" |
| -dp<processorName>!<className>!<assemblyName|codeBase> | 可用于在文本模板中处理自定义指令的指令处理器的名称、全类型名称和程序集。 |
| -a [processorName].[directiveName].<参数名称>.<参数值> | 指定指令处理器的参数值。 如果仅指定参数名称和值,该参数将可供所有指令处理器使用。 如果指定指令处理器,则参数仅适用于指定的处理器。 如果指定指令名称,则参数仅在处理指定的指令时才可用。 若要从指令处理器或文本模板访问参数值,请使用 ITextTemplatingEngineHost.ResolveParameterValue。 在文本模板中,将 hostspecific包含在模板指令中,并在this.Host上调用消息。 例如:<#@template language="c#" hostspecific="true"#> [<#= this.Host.ResolveParameterValue("", "", "parameterName") #>]。始终键入“!”标记,即使省略可选的处理器和指令名称。 例如: -a !!param!value |
| -h | 提供帮助。 |