Partager via


Générer des fichiers avec l’utilitaire TextTransform

TextTransform.exe est un outil en ligne de commande que vous pouvez utiliser pour transformer un modèle de texte. Lorsque vous appelez TextTransform.exe, vous spécifiez le nom d’un fichier de modèle texte en tant qu’argument. TextTransform.exe appelle le moteur de transformation de texte et traite le modèle de texte. TextTransform.exe est généralement appelée à partir de scripts. Toutefois, il n’est généralement pas nécessaire, car vous pouvez effectuer une transformation de texte dans Visual Studio ou dans le processus de génération.

Note

Si vous souhaitez effectuer une transformation de texte dans le cadre d’un processus de génération, envisagez d’utiliser la tâche de transformation de texte MSBuild. Pour plus d’informations, consultez Génération de code dans un processus de génération. Sur un ordinateur sur lequel Visual Studio est installé, vous pouvez également écrire une application ou une extension Visual Studio capable de transformer des modèles de texte. Pour plus d’informations, consultez Traitement des modèles de texte à l’aide d’un hôte personnalisé.

TextTransform.exe se trouve dans le répertoire suivant :

Syntaxe

TextTransform [<options>] <templateName>

Paramètres

argument Description
templateName Identifie le nom du fichier de modèle que vous souhaitez transformer.
Option Description
-out<nom de fichier> Fichier dans lequel la sortie de la transformation est écrite.
-r<assemblée> Assembly utilisé pour compiler et exécuter le modèle de texte.
-u<espace de noms> Espace de noms utilisé pour compiler le modèle.
-I<includedirectory> Répertoire qui contient les modèles de texte inclus dans le modèle de texte spécifié.
-P<referencepath> Répertoire permettant de rechercher des assemblies spécifiées dans le modèle de texte ou d'utiliser l’option -r.

Par exemple, pour inclure des assemblys utilisés pour l’API Visual Studio, utilisez

-P "%VSSHELLFOLDER%\Common7\IDE\PublicAssemblies"
-dp<processorName> ! <className> ! <assemblyName|codeBase> Nom, nom de type complet et assembly d'un processeur de directives qui peut être utilisé pour traiter les directives personnalisées dans le modèle de texte.
-a [processorName] ! [directiveName] !<parameterName> !<parameterValue> Spécifiez une valeur de paramètre pour un processeur de directive. Si vous spécifiez uniquement le nom et la valeur du paramètre, le paramètre sera disponible pour tous les processeurs de directive. Si vous spécifiez un processeur de directive, le paramètre est disponible uniquement pour le processeur spécifié. Si vous spécifiez un nom de directive, le paramètre est disponible uniquement lorsque la directive spécifiée est en cours de traitement.

Pour accéder aux valeurs des paramètres à partir d’un processeur de directive ou d’un modèle de texte, utilisez ITextTemplatingEngineHost.ResolveParameterValue. Dans un modèle de texte, incluez hostspecific dans la directive de modèle et appelez le message sur this.Host. Par exemple:

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

Tapez toujours les marques « ! », même si vous omettez les noms facultatifs du processeur et de la directive. Par exemple:

-a !!param!value
-h Fournit de l’aide.