Bagikan melalui


COM API untuk WMI

Anda dapat menggunakan API WMI Component Object Model (COM) untuk menulis aplikasi klien manajemen atau membuat penyedia WMI baru. Referensi COM API menyediakan informasi untuk administrator sistem tingkat lanjut, serta pengembang yang menulis aplikasi klien dan penyedia.

Untuk informasi selengkapnya tentang menulis aplikasi manajemen perusahaan WMI, lihat Membuat Aplikasi WMI Menggunakan C++. Untuk informasi selengkapnya tentang cara menulis penyedia WMI, lihat Menyediakan Data ke WMI.

Catatan

WMI hanya mendukung pengembangan C++ menggunakan Microsoft Visual C++ versi 6.0 dan sistem pengembangan yang lebih baru. Namun, Anda juga dapat menggunakan kompilator lain seperti yang berasal dari Borland dan Watcom.

 

Masing-masing objek WMI yang berbeda mewarisi dari antarmuka yang pada akhirnya diwarisi dari antarmuka IUnknown . COM menentukan bagaimana pelaksana objek, atau antarmuka, menangani tugas seperti manajemen memori, manajemen parameter, dan multithreading. Dengan menyesuaikan dengan COM, COM API untuk WMI memastikan bahwa IA mendukung fungsionalitas yang disediakan oleh antarmuka setiap objek WMI.

WMI diakses melalui antarmuka COM khusus WMI berikut.

Antarmuka Deskripsi
IEnumWbemClassObject Enumerator yang bekerja dengan objek jenis IWbemClassObject. Ini mirip dengan enumerator COM standar, seperti IEnumVariant.
IMofCompiler Diimplementasikan oleh Mofd.dll, antarmuka ini menyediakan antarmuka COM yang digunakan oleh pengkompilasi MOF dan aplikasi lain yang mengkompilasi file MOF.
IUnsecuredApartment Digunakan untuk menyederhanakan proses melakukan panggilan asinkron dari proses klien.
IWbemBackupRestore Mencadangkan dan memulihkan konten repositori WMI.
IWbemCallResult Digunakan untuk panggilan semisinkron antarmuka IWbemServices . Saat melakukan panggilan seperti itu, metode yang disebut IWbemServices segera kembali, bersama dengan objek IWbemCallResult .
IWbemCausalityAnalysis Melacak permintaan anak yang dihasilkan dari permintaan induk.
IWbemClassObject Berisi dan memanipulasi definisi kelas dan instans objek kelas. Pengembang tidak perlu mengimplementasikan antarmuka ini; WMI menyediakan implementasinya.
IWbemConfigureRefresher Digunakan oleh kode klien untuk menambahkan atau menghapus enumerator, objek, dan penyegar berlapis ke dalam penyegaran.
IWbemContext Secara opsional digunakan untuk mengomunikasikan informasi konteks tambahan kepada penyedia saat mengirimkan panggilan IWbemServices ke Manajemen Windows.
IWbemDecoupledBasicEventProvider Mendaftarkan penyedia yang di-decouple dengan WMI.
IWbemDecoupledRegistrar Mengaitkan penyedia yang di-decouple dengan WMI. Antarmuka ini memungkinkan penyedia yang dihosting proses untuk menentukan masa pakai interoperabilitas antarmuka dan hidup berdampingan dengan penyedia lain.
IWbemEventConsumerProvider Menyediakan antarmuka utama untuk penyedia konsumen peristiwa. Melalui antarmuka ini dan metode FindConsumer , penyedia konsumen peristiwa dapat menunjukkan peristiwa mana yang harus diterima konsumen peristiwa tertentu.
IWbemEventProvider Digunakan untuk memulai komunikasi dengan penyedia peristiwa.
IWbemEventProviderQuerySink Secara opsional diimplementasikan oleh penyedia peristiwa yang ingin mengetahui jenis filter kueri peristiwa apa yang saat ini aktif untuk mengoptimalkan performa.
IWbemEventProviderSecurity Secara opsional diimplementasikan oleh penyedia peristiwa yang ingin membatasi akses konsumen ke acara mereka.
IWbemEventSink Memulai komunikasi dengan penyedia peristiwa menggunakan sekumpulan kueri terbatas. Antarmuka ini memperluas IWbemObjectSink, menyediakan metode baru yang menangani keamanan dan performa.
IWbemHiPerfProvider Memungkinkan penyedia untuk menyediakan objek dan enumerator yang dapat disegarkan.
IWbemHiPerfEnum Digunakan dalam operasi penyegaran untuk menyediakan akses cepat ke enumerasi objek instans.
IWbemLocator Mendapatkan penunjuk namespace layanan awal ke antarmuka IWbemServices untuk WMI pada komputer host tertentu.
IWbemObjectAccess Menyediakan akses ke metode dan properti objek. Objek IWbemObjectAccess adalah kontainer untuk instans yang diperbarui oleh penyegaran.
IWbemObjectSink Digunakan untuk menerima hasil IWbemServices dan jenis pemberitahuan peristiwa tertentu.
IWbemObjectTextSrc Digunakan untuk menerjemahkan instans IWbemClassObject ke dan dari format teks yang berbeda.
IWbemPropertyProvider Mendukung pengambilan dan pembaruan properti individual dalam instans kelas WMI.
IWbemProviderIdentity Diimplementasikan oleh penyedia peristiwa jika penyedia mendaftarkan dirinya menggunakan lebih dari satu Nama (beberapa instans __Win32Provider) dengan nilai CLSID yang sama. Kelas menyediakan mekanisme untuk membedakan penyedia bernama mana yang harus digunakan.
IWbemProviderInit Digunakan untuk menginisialisasi penyedia.
IWbemProviderInitSink Diimplementasikan oleh WMI dan dipanggil oleh penyedia untuk melaporkan status inisialisasi.
IWbemQualifierSet Bertindak sebagai kontainer untuk seluruh set kualifikasi bernama untuk satu properti atau seluruh objek (kelas atau instans).
IWbemQuery Menyediakan titik masuk di mana kueri WMI Query Language (WQL) dapat diurai.
IWbemRefresher Menyediakan titik masuk di mana objek yang dapat disegarkan seperti enumerator atau objek penyegar, dapat disegarkan.
IWbemServices Digunakan oleh klien dan penyedia untuk mengakses layanan WMI. Antarmuka hanya diimplementasikan oleh WMI dan merupakan antarmuka WMI utama.
IWbemStatusCodeText Mengekstrak deskripsi string teks kode kesalahan atau nama subsistem tempat kesalahan terjadi.
IWbemUnboundObjectSink Diimplementasikan oleh semua konsumen peristiwa logis. Ini adalah antarmuka sink sederhana yang menerima pengiriman objek peristiwa.

 

Catatan

Banyak fungsi WMI COM mengembalikan kode kesalahan numerik yang didokumentasikan sebagai konstanta bernama. Konstanta ini didefinisikan dalam Wbemcli.h di folder PSDK WMI\Include. Untuk informasi selengkapnya, lihat Kode Pengembalian WMI.

 

Untuk informasi selengkapnya tentang topik berikut untuk pemrograman COM, lihat Pengembangan Komponen:

  • Antarmuka dan desain objek.
  • Menerapkan IUnknown.
  • Manajemen memori
  • Menangani penghitungan referensi.

Referensi WMI