mofcomp

Kompilator Managed Object Format (MOF) mengurai file yang berisi pernyataan MOF dan menambahkan kelas dan instans kelas yang ditentukan dalam file ke repositori WMI. File MOF biasanya dikompilasi secara otomatis selama penginstalan sistem yang disediakan, tetapi Anda juga dapat mengkompilasi file MOF dengan menggunakan alat ini.

Untuk informasi selengkapnya tentang menemukan dan menggunakan mofcomp.exe, lihat Menggunakan Alat Manajemen WMI. Untuk informasi tentang menghapus kelas dan instans dari repositori WMI, lihat perintah pragma deleteclass preprocessor.

Contoh kode berikut menunjukkan cara menjalankan pengkompilasi MOF pada file.

mofcomp
  [-autorecover]
  [-check]
  [-N:<namespacepath>]
  [-class:createonly | -class:forceupdate | 
   -class:safeupdate | -class:updateonly ] 
  [-instance:updateonly | -instance:createonly]
  [-B:<filename>]
  [-WMI]
  [-P:<Password>]
  [-U:<UserName>]
  [-A:<Authority>]
  [-MOF:<path>] 
  [-MFL:<path>] 
  [-AMENDMENT:<Locale>]
  [-ER:<ResourceName>]
  [-L:<ResourceLocale>] 
  <MOFfile>

Sakelar

-autorecover

Menambahkan file MOF bernama ke daftar file yang dikompilasi selama pemulihan repositori. Daftar file MOF pemulihan otomatis disimpan dalam kunci registri:

\ HKEY_LOCAL_MACHINE PERANGKAT LUNAK\Microsoft\WBEM\CIMOM\

File MOF yang tercantum dalam entri registri ini harus berada di komputer lokal karena file MOF yang menggunakan perintah pemulihan otomatis tidak dapat memulihkan file MOF yang terletak di komputer jarak jauh.

Catatan

Untuk memastikan bahwa semua definisi kelas WMI Anda untuk objek terkelola dipulihkan ke repositori WMI jika WMI mengalami kegagalan dan menghidupkan ulang, gunakan instruksi pra-prosesor pemulihan otomatis #pragma dalam file Managed Object Format (MOF) Anda.

-Check

Meminta agar pengkompilasi hanya melakukan pemeriksaan sintaksis dan mencetak pesan kesalahan yang sesuai. Tidak ada sakelar lain yang dapat digunakan dengan sakelar ini. Ketika sakelar ini digunakan, tidak ada koneksi ke Windows Management Instrumentation (WMI) yang dibuat dan tidak ada modifikasi pada repositori WMI yang dibuat.

-N:<namespacepath>

Meminta agar pengkompilasi memuat file MOF ke dalam namespace yang ditentukan sebagai *namespacepath*. MOF yang dikompilasi dimuat ke dalam namespace Mofcomp default, root\\default, kecuali sakelar ini digunakan. Anda juga dapat menyisipkan perintah preprocessor **\#pragma namespace ("***namespace path***")** dalam file MOF untuk mencapai efek yang sama. Jika sakelar **-N:** dan perintah namespace \#pragma digunakan, \#**pragma namespace** **autorecover** lebih diprioritaskan. Dalam hal ini, satu-satunya cara untuk mengkompilasi MOF ke namespace layanan lain adalah dengan mengedit file MOF dan mengubah perintah \#**pragma namespace**. Komputer jarak jauh dapat ditentukan menggunakan \\\\machinename\\root\\default.

-class:createonly

Meminta agar pengkompilasi tidak membuat perubahan apa pun pada kelas yang ada. Ketika sakelar ini digunakan, operasi kompilasi berakhir jika kelas yang ditentukan dalam file MOF sudah ada.

-class:forceupdate

Memaksa pembaruan kelas saat kelas anak yang bertentangan ada. Misalnya, kualifikasi kelas didefinisikan dalam kelas anak dan kelas dasar mencoba menambahkan kualifikasi yang sama. Dalam mode -class:forceupdate , kompilator MOF menyelesaikan konflik ini dengan menghapus kualifikasi yang bertentangan di kelas anak. Jika kelas anak memiliki instans, pembaruan paksa gagal.

-class:safeupdate

Memungkinkan pembaruan kelas bahkan jika ada kelas anak, selama perubahan tidak menyebabkan konflik dengan kelas anak. Misalnya, bendera ini memungkinkan penambahan properti baru ke kelas dasar yang sebelumnya tidak disebutkan di kelas anak. Jika kelas anak memiliki instans, pembaruan akan gagal.

-class:updateonly

Meminta agar pengkompilasi tidak membuat kelas baru apa pun. Ketika sakelar ini digunakan, operasi kompilasi berakhir jika kelas yang ditentukan dalam file MOF tidak ada.

-instance:updateonly

Meminta agar pengkompilasi tidak membuat instans baru apa pun. Ketika sakelar ini digunakan, operasi kompilasi berakhir jika instans yang ditentukan dalam file MOF tidak ada.

-instance:createonly

Meminta agar pengkompilasi tidak membuat perubahan apa pun pada instans yang ada. Ketika sakelar ini digunakan, operasi kompilasi berakhir jika instans yang ditentukan dalam file MOF sudah ada.

-B:<nama file>

Meminta agar kompilator membuat versi biner file MOF dengan nama file nama tanpa membuat modifikasi pada repositori WMI.

Jika Anda menggunakan opsi -B:<filename> untuk membuat file MOF biner, hanya rasa kualifikasi default yang disimpan di repositori WMI.

Format MOF biner adalah format perantara untuk menggabungkan driver WDM dengan MOF sebagai sumber daya. MOF biner mewakili kelas dan instans seperti yang dilakukan file MOF teks dan dikompresi sebelum disimpan di disk.

-WMI

Meminta agar pengkompilasi melakukan pemeriksaan sintaks WMI. Sakelar -B: harus digunakan dengan sakelar ini. Sakelar -WMI hanya digunakan untuk membangun file MOF biner untuk digunakan oleh driver perangkat WDM. Sakelar ini memanggil pemeriksa file MOF biner terpisah, yang berjalan setelah file MOF biner dibuat.

-P:<Password>

Menentukan Kata Sandi sebagai kata sandi untuk dimasukkan pengguna komputer saat masuk.

-U:<UserName>

Menentukan UserName sebagai nama pengguna yang masuk.

-A:<Authority>

Menentukan Otoritas sebagai otoritas (nama domain) untuk digunakan saat masuk ke WMI.

-MOF:<path>

Nama output netral bahasa. Digunakan dengan sakelar -AMENDMENT untuk menentukan nama file MOF netral bahasa yang akan dihasilkan.

-MFL:<path>

Nama output spesifik bahasa. Digunakan dengan sakelar -AMENDMENT untuk menentukan nama file MOF khusus bahasa yang akan dihasilkan.

-AMENDMENT:<Locale>

Membagi file MOF menjadi versi bahasa netral dan -spesifik. Pengkompilasi MOF membuat bentuk bahasa netral dari file MOF yang memiliki semua kualifikasi yang diubah dihapus. Versi lokal file MOF juga dibuat dengan ekstensi nama file MFL. Parameter Lokal menentukan nama namespace anak yang berisi definisi kelas yang dilokalkan. Format parameter Lokal MS_xxx di mana xxx adalah nilai heksadesimal dari Windows LCID. Misalnya, lokal untuk bahasa Inggris Amerika MS_409.

-ER <ResourceName>

Mengekstrak MOF biner dari sumber daya bernama. Sakelar ini mendapatkan MOF biner dari kelas di repositori WMI sementara sakelar -B membuat format MOF biner dari file MOF.

-L:<ResourceLocale>

Opsional. Mengekstrak deskripsi MOF yang dilokalkan dari MOF biner saat digunakan dengan sakelar -ER.

<MOFfile>

Nama file yang akan diurai.

Nilai yang Dikembalikan

Sebagai operasi pertamanya, pengkompilasi MOF melakukan pemeriksaan sintaks pada file MOF. Jika pengkompilasi menemukan kesalahan, pengkompilasi mencetak pesan kesalahan dan proses berakhir.

Pengkompilasi MOF dapat mengembalikan nilai berikut:

0

Operasi kompilasi MOF berhasil.

1

Pengkompilasi MOF tidak dapat tersambung dengan server WMI. Ini karena kesalahan semantik seperti ketidaksesuaian dengan repositori WMI yang ada atau kesalahan aktual seperti kegagalan server WMI untuk memulai.

2

Satu atau beberapa sakelar baris perintah tidak valid.

3

Terjadi kesalahan sintaks MOF.

Jika file MOF diurai dengan benar, tetapi upaya dilakukan untuk melakukan operasi yang dilarang oleh sakelar baris perintah, kompilator mengembalikan kode kesalahan yang dihasilkan oleh WMI alih-alih salah satu kode pengembalian yang tercantum dalam daftar sebelumnya. Misalnya, kode kesalahan WMI dikembalikan ketika sakelar -instance:updateonly ditentukan dan file MOF mencoba membuat instans.

Jika pernyataan praprosesor #pragma pemulihan otomatis tidak ada dalam file, maka peringatan berikut dikembalikan:

WARNING: FileYourMof.Mof does not contain #PRAGMA AUTORECOVER.
If the WMI repository is rebuilt in the future, the contents of this 
MOF file   will not be included in the new WMI repository.
To include this MOF file when the WMI Repository is automatically 
reconstructed, place the #PRAGMA AUTORECOVER statement on the first 
line of the MOF file.

Keterangan

Pengkompilasi MOF tersedia di direktori %Windir%\System32\wbem. Anda harus menentukan file MOF sebagai parameter Pengkompilasi MOF. Anda juga dapat menentukan sakelar Pemulihan Otomatis jika Anda ingin file MOF dikompresi ulang secara otomatis jika Repositori CIM harus dipulihkan secara otomatis. Untuk informasi selengkapnya, ketik Mofcomp /? di prompt perintah.

File MOF yang menggunakan set karakter Unicode berisi tanda tangan sebagai dua byte pertama file. Tanda tangan ini adalah U+FFFE atau U+FEFF, tergantung pada urutan byte file.

Ketika tidak ada kesalahan yang terjadi dalam proses penguraian, pengkompilasi MOF terhubung ke server WMI yang berjalan di komputer lokal kecuali sakelar -check ditentukan. Kelas dan instans yang ditentukan dalam file MOF ditambahkan ke repositori WMI.

Ketika kesalahan terjadi dalam memperbarui repositori WMI, pengkompilasi tidak mencoba mengembalikan repositori ke keadaannya sebelum pengkompilasi mulai diproses.

Windows 8: Saat menginstal penyedia, mofcomp memperlakukan kualifikasi [Kunci] dan [Statis] sebagai benar jika ada, terlepas dari nilai sebenarnya. Kualifikasi lain diperlakukan sebagai false jika ada tetapi tidak secara eksplisit diatur ke true.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows Vista
Server minimum yang didukung
Windows Server 2008

Lihat juga

namespace pragma

Mengkompilasi File MOF

Mengkompilasi File MOF yang Dilokalkan

Mendaftarkan Penyedia

IMOFCompiler::CompileFile