Delen via


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 winmdmodulebevat.
/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> .

Zie ook