Winmdexp.exe (hulpprogramma voor het exporteren van metagegevens van Windows Runtime)
Met het Hulpprogramma voor het exporteren van metagegevens van Windows Runtime (Winmdexp.exe) wordt een .NET Framework-module omgezet in een bestand dat metagegevens van Windows Runtime bevat. Hoewel .NET Framework-assembly's en Windows Runtime-metagegevensbestanden dezelfde fysieke indeling gebruiken, zijn er verschillen in de inhoud van de metagegevenstabellen, wat betekent dat .NET Framework-assembly's niet automatisch kunnen worden gebruikt als Windows Runtime-onderdelen. Het proces voor het omzetten van een .NET Framework-module in een Windows Runtime-onderdeel wordt ook wel exporteren genoemd. In .NET Framework 4.5 en 4.5.1 bevat het resulterende Windows-metagegevensbestand (.winmd) zowel metagegevens als implementatie.
Wanneer u de Windows Runtime Component-sjabloon gebruikt, die zich bevindt onder Windows Store voor C# en Visual Basic in Visual Studio 2013 of Visual Studio 2012, is het compilerdoel een .winmdobj-bestand en wordt in een volgende buildstap Winmdexp.exe aangeroepen om het .winmdobj-bestand te exporteren naar een .winmd-bestand. Dit is de aanbevolen manier om een Windows Runtime-onderdeel te bouwen. Gebruik Winmdexp.exe rechtstreeks als u meer controle wilt over het buildproces dan Visual Studio biedt.
Dit hulpprogramma wordt automatisch geïnstalleerd met Visual Studio. Als u het hulpprogramma wilt uitvoeren, gebruikt u de Visual Studio Developer-opdrachtprompt of Visual Studio Developer PowerShell.
Typ het volgende bij de opdrachtprompt:
Syntaxis
winmdexp [options] winmdmodule
Parameters
Argument of optie | Beschrijving |
---|---|
winmdmodule |
Hiermee geeft u de module (.winmdobj) die moet worden geëxporteerd. Er is slechts één module toegestaan. Als u deze module wilt maken, gebruikt u de /target compileroptie met het winmdobj doel. Zie -target:winmdobj (C#-compileropties) of -target (Visual Basic). |
/docfile: docfile /d: docfile |
Hiermee geeft u het XML-uitvoerdocumentatiebestand op dat Winmdexp.exe produceert. In .NET Framework 4.5 is het uitvoerbestand in feite hetzelfde als het XML-invoerdocumentatiebestand. |
/moduledoc: docfile /md: docfile |
Hiermee geeft u de naam van het XML-documentatiebestand waarmee de compiler is geproduceerd winmdmodule . |
/modulepdb: symbolfile /mp: symbolfile |
Hiermee geeft u de naam van het programmadatabasebestand (PDB) dat symbolen voor winmdmodule bevat. |
/nowarn: warning |
Onderdrukt het opgegeven waarschuwingsnummer. Geef voor waarschuwing alleen het numerieke gedeelte van de foutcode op, zonder voorloopnullen. |
/out: file /o: file |
Hiermee geeft u de naam van het windows-uitvoermetagegevensbestand (.winmd). |
/pdb: symbolfile /p: symbolfile |
Hiermee geeft u de naam van het PDB-bestand (output program database) dat de symbolen voor het geëxporteerde Windows-metagegevensbestand (.winmd) bevat. |
/reference: winmd /r: winmd |
Hiermee geeft u een metagegevensbestand (.winmd of assembly) waarnaar moet worden verwezen tijdens de export. Als u de referentieassembly's gebruikt in \Program Files (x86)\Reference Assemblies\Microsoft\Framework\. NETCore\v4.5" ("\Program Files\..." op 32-bits computers) bevatten verwijzingen naar zowel System.Runtime.dll als mscorlib.dll. |
/utf8output |
Hiermee geeft u op dat uitvoerberichten moeten worden gecodeerd in UTF-8. |
/warnaserror+ |
Hiermee geeft u op dat alle waarschuwingen moeten worden behandeld als fouten. |
@ responsefile |
Hiermee geeft u een antwoordbestand (.rsp) met opties (en optioneel winmdmodule ). Elke regel moet responsefile één argument of optie bevatten. |
Opmerkingen
Winmdexp.exe is niet ontworpen om een willekeurige .NET Framework-assembly te converteren naar een .winmd-bestand. Hiervoor is een module vereist die is gecompileerd met de /target:winmdobj
optie en er gelden aanvullende beperkingen. Het belangrijkste van deze beperkingen is dat alle typen die worden weergegeven in het API-oppervlak van de assembly Windows Runtime-typen moeten zijn. Zie de sectie 'Typen declareren in Windows Runtime-onderdelen' van het artikel Windows Runtime-onderdelen maken in C# en Visual Basic voor meer informatie.
Wanneer u een Windows 8.x Store-app of een Windows Runtime-onderdeel schrijft met C# of Visual Basic, biedt .NET Framework ondersteuning om programmeren met Windows Runtime natuurlijker te maken. Dit wordt besproken in het artikel .NET Framework-ondersteuning voor Windows Store-apps en Windows Runtime. In het proces worden enkele veelgebruikte Windows Runtime-typen toegewezen aan .NET Framework-typen. Winmdexp.exe dit proces omkeren en een API-oppervlak produceert dat gebruikmaakt van de bijbehorende Windows Runtime-typen. Bijvoorbeeld typen die zijn samengesteld op basis van de IList<T> interfacetoewijzing naar typen die zijn samengesteld vanuit de Windows Runtime-interface IVector<T> .