Dela via


Winmdexp.exe (exportverktyget för Windows Runtime-metadata)

Exportverktyget för Windows Runtime-metadata (Winmdexp.exe) omvandlar en .NET Framework-modul till en fil som innehåller Windows Runtime-metadata. Även om .NET Framework-sammansättningar och Windows Runtime-metadatafiler använder samma fysiska format finns det skillnader i innehållet i metadatatabellerna, vilket innebär att .NET Framework-sammansättningar inte kan användas automatiskt som Windows Runtime-komponenter. Processen att omvandla en .NET Framework-modul till en Windows Runtime-komponent kallas export. I .NET Framework 4.5 och 4.5.1 innehåller den resulterande Windows-metadatafilen (.winmd) både metadata och implementering.

När du använder windows runtime-komponentmallen , som finns under Windows Store för C# och Visual Basic i Visual Studio 2013 eller Visual Studio 2012, är kompilatormålet en .winmdobj-fil och ett efterföljande byggsteg anropar Winmdexp.exe för att exportera .winmdobj-filen till en .winmd-fil. Det här är det rekommenderade sättet att skapa en Windows Runtime-komponent. Använd Winmdexp.exe direkt när du vill ha mer kontroll över byggprocessen än vad Visual Studio tillhandahåller.

Det här verktyget installeras automatiskt med Visual Studio. Om du vill köra verktyget använder du Visual Studio Developer Command Prompt eller Visual Studio Developer PowerShell.

Skriv följande vid kommandotolken:

Syntax

winmdexp [options] winmdmodule  

Parametrar

Argument eller alternativ beskrivning
winmdmodule Anger den modul (.winmdobj) som ska exporteras. Endast en modul tillåts. Om du vill skapa den här modulen /target använder du kompilatoralternativet winmdobj med målet. Se -target:winmdobj (C#Compiler Options) eller -target (Visual Basic).
/docfile: docfile

/d: docfile
Anger xml-dokumentationsfilen för utdata som Winmdexp.exe ska producera. I .NET Framework 4.5 är utdatafilen i stort sett densamma som XML-dokumentationsfilen för indata.
/moduledoc: docfile

/md: docfile
Anger namnet på XML-dokumentationsfilen som kompilatorn skapade med winmdmodule.
/modulepdb: symbolfile

/mp: symbolfile
Anger namnet på den programdatabasfil (PDB) som innehåller symboler för winmdmodule.
/nowarn: warning Undertrycker det angivna varningsnumret. För varning anger du endast den numeriska delen av felkoden, utan inledande nollor.
/out: file

/o: file
Anger namnet på utdatafilen för Windows-metadata (.winmd).
/pdb: symbolfile

/p: symbolfile
Anger namnet på utdataprogramdatabasfilen (PDB) som innehåller symbolerna för den exporterade Windows-metadatafilen (.winmd).
/reference: winmd

/r: winmd
Anger en metadatafil (.winmd eller sammansättning) som ska refereras under exporten. Om du använder referenssammansättningarna i "\Program Files (x86)\Reference Assemblies\Microsoft\Framework\. NETCore\v4.5" ("\Program Files\..." på 32-bitarsdatorer), innehåller referenser till både System.Runtime.dll och mscorlib.dll.
/utf8output Anger att utdatameddelanden ska vara i UTF-8-kodning.
/warnaserror+ Anger att alla varningar ska behandlas som fel.
@ responsefile Anger en svarsfil (.rsp) som innehåller alternativ (och eventuellt winmdmodule). Varje rad i responsefile bör innehålla ett enda argument eller alternativ.

Kommentarer

Winmdexp.exe är inte utformat för att konvertera en godtycklig .NET Framework-sammansättning till en .winmd-fil. Det kräver en modul som kompileras med /target:winmdobj alternativet och ytterligare begränsningar gäller. Det viktigaste av dessa begränsningar är att alla typer som exponeras i API-ytan för sammansättningen måste vara Windows Runtime-typer. Mer information finns i avsnittet "Deklarera typer i Windows Runtime-komponenter" i artikeln Skapa Windows Runtime-komponenter i C# och Visual Basic.

När du skriver en Windows 8.x Store-app eller en Windows Runtime-komponent med C# eller Visual Basic, ger .NET Framework stöd för att göra programmering med Windows Runtime mer naturligt. Detta beskrivs i artikeln .NET Framework-stöd för Windows Store-appar och Windows Runtime. Under processen mappas vissa vanliga Windows Runtime-typer till .NET Framework-typer. Winmdexp.exe återställer den här processen och skapar en API-yta som använder motsvarande Windows Runtime-typer. Till exempel typer som konstrueras från gränssnittskartan IList<T> till typer som är konstruerade från Windows Runtime-gränssnittet IVector<T> .

Se även