Generación de archivos con la utilidad TextTransform

TextTransform.exe es una herramienta de línea de comandos que puede usar para transformar una plantilla de texto. Al llamar a TextTransform.exe, especifique el nombre de un archivo de plantilla de texto como argumento. TextTransform.exe llama al motor de transformación de texto y procesa la plantilla de texto. Normalmente se llama a TextTransform.exe desde scripts. Sin embargo, no suele ser necesario, ya que puede realizar la transformación de texto en Visual Studio o en el proceso de compilación.

Nota:

Si quiere realizar la transformación de texto como parte de un proceso de compilación, considere la posibilidad de usar la tarea de transformación de texto de MSBuild. Para obtener más información, vea Generación de código en un proceso de compilación. En un equipo en el que está instalado Visual Studio, también puede escribir una aplicación o una extensión de Visual Studio que pueda transformar plantillas de texto. Para obtener más información, consulte Procesamiento de plantillas de texto mediante un host personalizado.

TextTransform.exe se encuentra en el siguiente directorio:

\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE

para la edición Professional, o

\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE

para la edición Enterprise.

\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE

para la edición Professional, o

\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE

para la edición Enterprise.

Sintaxis

TextTransform [<options>] <templateName>

Parámetros

Argument Descripción
templateName Identifica el nombre del archivo de plantilla que quiere transformar.
Opción Descripción
-out<filename> Archivo en el que se escribe la salida de la transformación.
-r<assembly> Ensamblado usado para compilar y ejecutar la plantilla de texto.
-u<namespace> Espacio de nombres que se usa para compilar la plantilla.
-I<includedirectory> Directorio que contiene las plantillas de texto incluidas en la plantilla de texto especificada.
-P<referencepath> Directorio para buscar ensamblados especificados en la plantilla de texto o para usar la opción -r.

Por ejemplo, para incluir ensamblados usados para la API de Visual Studio, use

-P "%VSSHELLFOLDER%\Common7\IDE\PublicAssemblies"
-dp<processorName>!<className>!<assemblyName|codeBase> Nombre, nombre de tipo completo y ensamblado de un procesador de directivas que se puede usar para procesar directivas personalizadas dentro de la plantilla de texto.
-a [processorName]![directiveName]!<parameterName>!<parameterValue> Especifique un valor de parámetro para un procesador de directivas. Si especifica solo el nombre y el valor del parámetro, el parámetro estará disponible para todos los procesadores de directivas. Si especifica un procesador de directivas, el parámetro solo está disponible para el procesador especificado. Si especifica un nombre de directiva, el parámetro solo está disponible cuando la directiva especificada se está procesando.

Para tener acceso a los valores de parámetro desde un procesador de directivas o una plantilla de texto, use ITextTemplatingEngineHost.ResolveParameterValue. En una plantilla de texto, incluya hostspecific en la directiva de plantilla e invoque el mensaje en this.Host. Por ejemplo:

<#@template language="c#" hostspecific="true"#> [<#= this.Host.ResolveParameterValue("", "", "parameterName") #>].

Escriba siempre las marcas "!", incluso si se omiten los nombres opcionales de procesador y directiva. Por ejemplo:

-a !!param!value
-h Proporciona ayuda.