Partager via


Winmdexp.exe (Outil d’exportation de métadonnées Windows Runtime)

L’outil d’exportation de métadonnées Windows Runtime (Winmdexp.exe) transforme un module .NET Framework en fichier qui contient des métadonnées Windows Runtime. Bien que les assemblys .NET Framework et les fichiers de métadonnées Windows Runtime utilisent le même format physique, il existe des différences dans le contenu des tables de métadonnées, ce qui signifie que les assemblys .NET Framework ne sont pas automatiquement utilisables en tant que composants Windows Runtime. Le processus de transformation d’un module .NET Framework en composant Windows Runtime est appelé exportation. Dans .NET Framework 4.5 et 4.5.1, le fichier de métadonnées Windows résultant (.winmd) contient les métadonnées et l’implémentation.

Lorsque vous utilisez le modèle composant Windows Runtime , qui se trouve sous Le Windows Store pour C# et Visual Basic dans Visual Studio 2013 ou Visual Studio 2012, la cible du compilateur est un fichier .winmdobj et une étape de génération suivante appelle Winmdexp.exe pour exporter le fichier .winmdobj vers un fichier .winmd. Il s’agit de la méthode recommandée pour générer un composant Windows Runtime. Utilisez Winmdexp.exe directement lorsque vous souhaitez plus de contrôle sur le processus de génération que Visual Studio fournit.

Cet outil est installé automatiquement avec Visual Studio. Pour exécuter l’outil, utilisez l’invite de commandes développeur Visual Studio ou PowerShell pour développeurs Visual Studio.

À l'invite de commandes, tapez le texte suivant :

Syntaxe

winmdexp [options] winmdmodule  

Paramètres

Argument ou option Descriptif
winmdmodule Spécifie le module (.winmdobj) à exporter. Un seul module est autorisé. Pour créer ce module, utilisez l’option du /target compilateur avec la winmdobj cible. Consultez -target :winmdobj (Options du compilateur C#) ou -target (Visual Basic).
/docfile: docfile

/d: docfile
Spécifie le fichier de documentation XML de sortie que Winmdexp.exe produira. Dans .NET Framework 4.5, le fichier de sortie est essentiellement identique au fichier de documentation XML d’entrée.
/moduledoc: docfile

/md: docfile
Spécifie le nom du fichier de documentation XML que le compilateur a produit avec winmdmodule.
/modulepdb: symbolfile

/mp: symbolfile
Spécifie le nom du fichier de base de données de programme (PDB) qui contient des symboles pour winmdmodule.
/nowarn: warning Supprime le numéro d’avertissement spécifié. Pour avertissement, fournissez uniquement la partie numérique du code d’erreur, sans zéros non significatifs.
/out: file

/o: file
Spécifie le nom du fichier de métadonnées Windows de sortie (.winmd).
/pdb: symbolfile

/p: symbolfile
Spécifie le nom du fichier de base de données du programme de sortie (PDB) qui contiendra les symboles du fichier de métadonnées Windows exportées (.winmd).
/reference: winmd

/r: winmd
Spécifie un fichier de métadonnées (.winmd ou assembly) à référencer pendant l’exportation. Si vous utilisez les assemblys de référence dans « \Program Files (x86)\Reference Assemblys\Microsoft\Framework\. NETCore\v4.5 » (« \Program Files\... » sur les ordinateurs 32 bits), incluez des références à la fois aux System.Runtime.dll et aux mscorlib.dll.
/utf8output Spécifie que les messages de sortie doivent être dans l’encodage UTF-8.
/warnaserror+ Spécifie que tous les avertissements doivent être traités comme des erreurs.
@ responsefile Spécifie un fichier response (.rsp) qui contient des options (et éventuellement winmdmodule). Chaque ligne responsefile doit contenir un seul argument ou option.

Remarques

Winmdexp.exe n’est pas conçu pour convertir un assembly .NET Framework arbitraire en fichier .winmd. Il nécessite un module compilé avec l’option /target:winmdobj et des restrictions supplémentaires s’appliquent. La plus importante de ces restrictions est que tous les types exposés dans la surface d’API de l’assembly doivent être des types Windows Runtime. Pour plus d’informations, consultez la section « Déclaration de types dans les composants Windows Runtime » de l’article Création de composants Windows Runtime en C# et Visual Basic.

Lorsque vous écrivez une application Windows 8.x Store ou un composant Windows Runtime avec C# ou Visual Basic, le .NET Framework prend en charge la programmation avec Windows Runtime plus naturelle. Cet article décrit la prise en charge du .NET Framework pour les applications du Windows Store et Windows Runtime. Dans le processus, certains types Windows Runtime couramment utilisés sont mappés aux types .NET Framework. Winmdexp.exe inverse ce processus et produit une surface d’API qui utilise les types Windows Runtime correspondants. Par exemple, les types construits à partir du IList<T> mappage d’interface aux types construits à partir de l’interface Windows Runtime IVector<T> .

Voir aussi