Winmdexp.exe (narzędzie eksportowania metadanych środowiska wykonawczego systemu Windows)

Narzędzie środowisko wykonawcze systemu Windows Metadata Export Tool (Winmdexp.exe) przekształca moduł .NET Framework w plik zawierający metadane środowisko wykonawcze systemu Windows. Chociaż zestawy .NET Framework i pliki metadanych środowisko wykonawcze systemu Windows używają tego samego formatu fizycznego, istnieją różnice w zawartości tabel metadanych, co oznacza, że zestawy .NET Framework nie mogą być automatycznie używane jako środowisko wykonawcze systemu Windows Składniki. Proces przekształcania modułu .NET Framework w składnik środowisko wykonawcze systemu Windows jest określany jako eksportowanie. W .NET Framework 4.5 i 4.5.1 wynikowy plik metadanych systemu Windows (winmd) zawiera metadane i implementację.

Jeśli używasz szablonu składnika środowisko wykonawcze systemu Windows, który znajduje się w Sklepie Windows dla języka C# i Visual Basic w Visual Studio 2013 lub Visual Studio 2012, obiekt docelowy kompilatora jest plikiem winmdobj, a kolejne wywołania kroku kompilacji Winmdexp.exe wyeksportować plik winmdobj do pliku winmdj. Jest to zalecany sposób tworzenia składnika środowisko wykonawcze systemu Windows. Programu Winmdexp.exe należy używać bezpośrednio, gdy potrzebna jest większa kontrola nad procesem kompilacji niż dostępna w Visual Studio.

To narzędzie jest instalowane automatycznie z programem Visual Studio. Aby uruchomić narzędzie, użyj wiersza polecenia dla deweloperów programu Visual Studio lub programu Visual Studio Developer PowerShell.

W wierszu polecenia wpisz następujące polecenie:

Składnia

winmdexp [options] winmdmodule  

Parametry

Argument lub opcja Opis
winmdmodule Określa moduł (winmdobj) do wyeksportowania. Dozwolony jest tylko jeden moduł. Aby utworzyć ten moduł, użyj opcji kompilatora /target z elementem winmdobj docelowym. Zobacz -target:winmdobj (opcje kompilatora C#) lub -target (Visual Basic).
/docfile: docfile

/d: docfile
Określa wyjściowy plik dokumentacji XML, który zostanie wygenerowany przez Winmdexp.exe. W .NET Framework 4.5 plik wyjściowy jest zasadniczo taki sam jak wejściowy plik dokumentacji XML.
/moduledoc: docfile

/md: docfile
Określa nazwę pliku dokumentacji XML, który kompilator wyprodukował za pomocą winmdmodulepolecenia .
/modulepdb: symbolfile

/mp: symbolfile
Określa nazwę pliku bazy danych programu (PDB), który zawiera symbole .winmdmodule
/nowarn: warning Wyłącza ostrzeżenie o podanym numerze. Aby uzyskać ostrzeżenie, podaj tylko część liczbową kodu błędu bez zer wiodących.
/out: file

/o: file
Określa nazwę wyjściowego pliku metadanych systemu Windows (winmd).
/pdb: symbolfile

/p: symbolfile
Określa nazwę wyjściowego pliku bazy danych programu (PDB), który będzie zawierał symbole dla eksportowanego pliku metadanych systemu Windows (winmd).
/reference: winmd

/r: winmd
Określa plik metadanych (winmd lub zestaw) jako plik referencyjny podczas eksportowania. Jeśli używasz zestawów odwołań w folderze "\Program Files (x86)\Reference Assemblies\Microsoft\Framework\. NETCore\v4.5" ("\Program Files\..." na komputerach 32-bitowych) zawierają odwołania do System.Runtime.dll i mscorlib.dll.
/utf8output Określa, że komunikaty wyjściowe powinny mieć kodowanie UTF-8.
/warnaserror+ Określa, że wszystkie ostrzeżenia powinny być traktowane jako błędy.
@ responsefile Określa plik odpowiedzi (rsp), który zawiera opcje (i opcjonalnie winmdmodule). Każdy wiersz w elemecie responsefile powinien zawierać jeden argument lub opcję.

Uwagi

Winmdexp.exe nie jest przeznaczony do konwertowania dowolnego zestawu .NET Framework do pliku winmd. Wymaga modułu skompilowanego z opcją /target:winmdobj , a obowiązują dodatkowe ograniczenia. Najważniejsze z tych ograniczeń jest to, że wszystkie typy uwidocznione na powierzchni interfejsu API zestawu muszą być środowisko wykonawcze systemu Windows typów. Aby uzyskać więcej informacji, zobacz sekcję "Deklarowanie typów w składnikach środowisko wykonawcze systemu Windows" w artykule Tworzenie składników środowisko wykonawcze systemu Windows w języku C# i Visual Basic.

Podczas pisania aplikacji Windows 8.x Store lub składnika środowisko wykonawcze systemu Windows w języku C# lub Visual Basic .NET Framework .NET Framework zapewnia obsługę programowania za pomocą środowisko wykonawcze systemu Windows bardziej naturalne. Opisano to w artykule .NET Framework Support for Windows Store Apps and środowisko wykonawcze systemu Windows (Obsługa aplikacji ze Sklepu Windows i środowisko wykonawcze systemu Windows). W procesie niektóre często używane typy środowisko wykonawcze systemu Windows są mapowane na typy .NET Framework. Winmdexp.exe odwraca ten proces i tworzy powierzchnię interfejsu API, która używa odpowiednich typów środowisko wykonawcze systemu Windows. Na przykład typy skonstruowane z mapy interfejsu IList<T> do typów utworzonych z interfejsu środowisko wykonawcze systemu Windows IVector<T> interfejsu.

Zobacz też