Bagikan melalui


Winmdexp.exe (Alat Ekspor Metadata Windows Runtime)

Alat Ekspor Metadata Windows Runtime (Winmdexp.exe) mengubah modul .NET Framework menjadi file yang berisi metadata Windows Runtime. Meskipun assembly .NET Framework dan file metadata Windows Runtime menggunakan format fisik yang sama, ada perbedaan dalam konten tabel metadata, yang berarti bahwa assembly .NET Framework tidak secara otomatis dapat digunakan sebagai Komponen Windows Runtime. Proses mengubah modul .NET Framework menjadi komponen Windows Runtime disebut sebagai mengekspor. Di .NET Framework 4.5 dan 4.5.1, file metadata Windows (.winmd) yang dihasilkan berisi metadata dan implementasi.

Saat Anda menggunakan template Komponen Windows Runtime, yang terletak di bawah Windows Store untuk C# dan Visual Basic di Visual Studio 2013 atau Visual Studio 2012, target pengompilasi adalah file .winmdobj, dan langkah pembangunan berikutnya memanggil Winmdexp.exe untuk mengekspor file .winmdobj ke file .winmd. Ini adalah cara yang disarankan untuk membangun komponen Windows Runtime. Gunakan Winmdexp.exe secara langsung saat Anda ingin memiliki kontrol yang lebih besar atas proses pembangunan dari yang disediakan Visual Studio.

Alat ini otomatis terpasang dengan Visual Studio. Untuk menjalankan alat, gunakan Prompt Perintah Pengembang Visual Studio atau PowerShell Pengembang Visual Studio.

Pada perintah, masukkan berikut ini:

Sintaks

winmdexp [options] winmdmodule  

Parameter

Argumen atau opsi Deskripsi
winmdmodule Menentukan modul (.winmdobj) yang akan diekspor. Hanya satu modul yang diizinkan. Untuk membuat modul ini, gunakan opsi pengompilasi /target dengan target winmdobj. Lihat -target:winmdobj (Opsi Pengompilasi C#) atau -target (Visual Basic).
/docfile: docfile

/d: docfile
Menentukan file dokumentasi XML output yang akan dihasilkan oleh Winmdexp.exe. Dalam .NET Framework 4.5, file output pada dasarnya sama dengan file dokumentasi XML input.
/moduledoc: docfile

/md: docfile
Menentukan nama file dokumentasi XML yang dihasilkan oleh pengompilasi dengan winmdmodule.
/modulepdb: symbolfile

/mp: symbolfile
Menentukan nama file database program (PDB) yang berisi simbol untuk winmdmodule.
/nowarn: warning Menekan nomor peringatan yang ditentukan. Untuk peringatan, berikan hanya bagian numerik dari kode galat, tanpa awalan nol.
/out: file

/o: file
Menentukan nama file metadata Windows (.winmd) output.
/pdb: symbolfile

/p: symbolfile
Menentukan nama file database program (PDB) output yang akan berisi simbol untuk file metadata Windows (.winmd) yang diekspor.
/reference: winmd

/r: winmd
Menentukan file metadata (.winmd atau assembly) untuk referensi selama ekspor. Jika Anda menggunakan assembly referensi di "\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5" ("\Program Files\..." pada komputer 32-bit), sertakan referensi ke System.Runtime.dll dan mscorlib.dll.
/utf8output Menentukan bahwa pesan output harus dalam pengodean UTF-8.
/warnaserror+ Menentukan bahwa semua peringatan harus diperlakukan sebagai kesalahan.
@ responsefile Menentukan file respons (.rsp) yang berisi opsi (dan secara opsional winmdmodule). Setiap baris dalam responsefile harus berisi satu argumen atau opsi.

Keterangan

Winmdexp.exe tidak dirancang untuk mengubah assembly .NET Framework arbitrer menjadi file .winmd. Ini membutuhkan modul yang dikompilasi dengan opsi /target:winmdobj, dan batasan tambahan berlaku. Yang paling penting dari pembatasan ini adalah bahwa semua jenis yang diekspos di permukaan API assembly harus merupakan jenis Windows Runtime. Untuk informasi selengkapnya, lihat bagian "Mendeklarasikan jenis di Komponen Windows Runtime" dari artikel Membuat Komponen Windows Runtime dalam C# dan Visual Basic.

Saat Anda menulis aplikasi Windows 8.x Store atau komponen Windows Runtime dengan C# atau Visual Basic, .NET Framework menyediakan dukungan untuk menjadikan pemrograman dengan Windows Runtime lebih alami. Ini dibahas dalam artikel Dukungan .NET Framework untuk Aplikasi Windows Store dan Windows Runtime. Dalam prosesnya, beberapa jenis Windows Runtime yang umum digunakan dipetakan ke jenis .NET Framework. Winmdexp.exe membalikkan proses ini dan menghasilkan permukaan API yang menggunakan jenis Windows Runtime yang sesuai. Misalnya, jenis yang dibuat dari antarmuka IList<T> dipetakan ke jenis yang dibuat dari antarmuka Windows Runtime IVector<T>.

Lihat juga