Mengkueri WMI

Salah satu alat utama Instrumentasi Manajemen Windows (WMI) adalah kemampuan untuk mengkueri repositori WMI untuk informasi kelas dan instans. Misalnya, Anda dapat meminta WMI mengembalikan semua objek yang mewakili peristiwa matikan dari sistem desktop Anda. Anda juga dapat mengambil data kelas, instans, atau skema. Tabel berikut ini mencantumkan berbagai jenis kueri yang bisa Anda buat.

Topik Deskripsi
Menjalankan Kueri Sinkron Menjelaskan cara mempertahankan tautan dengan WMI selama proses kueri. Kueri sinkron baik untuk kueri kecil atau kueri ke sistem lokal.
Memanggil Asinkron Kueri Menjelaskan cara menyiapkan proses terpisah untuk menerima pertanyaan. Kueri asinkron lebih kompleks dan memberikan tingkat keamanan yang lebih rendah, tetapi umumnya meningkatkan performa sistem.

Selain mengkueri repositori WMI, Anda juga dapat menggunakanWMI Query Language (WQL) untuk merutekan peristiwa pemberitahuan ke aplikasi Anda. Untuk informasi selengkapnya, lihat Menerima Acara WMI.

Nota

Untuk mengkueri WMI dengan benar, Anda harus memiliki pemahaman yang baik tentang WQL. Kueri yang salah, terlalu kompleks, atau tidak pantas dapat menyebabkan prosesor kueri mengembalikan kesalahan atau hasil yang tidak terduga. Untuk panduan lengkap mengenai WQL, lihat Querying dengan menggunakan WQL.

Ada batasan jumlah kata kunci AND dan OR yang dapat digunakan dalam kueri WQL. Sejumlah besar kata kunci WQL yang digunakan dalam kueri kompleks dapat menyebabkan WMI mengembalikan kode kesalahan WBEM_E_QUOTA_VIOLATION sebagai nilai HRESULT. Batas kata kunci WQL tergantung pada seberapa kompleks kueri.

Saat mengkueri nilai properti dengan uint64 atau jenis data sint64 dalam bahasa skrip seperti VBScript, WMI mengembalikan nilai string. Hasil yang tidak terduga dapat terjadi saat membandingkan nilai-nilai ini, karena membandingkan string mengembalikan hasil yang berbeda dari membandingkan angka. Misalnya, "10000000000" kurang dari "9" saat membandingkan string, dan 9 kurang dari 10000000000 saat membandingkan angka. Untuk menghindari kebingungan, Anda harus menggunakan metode CDbl di VBScript ketika properti tipe uint64 atau sint64 diambil dari WMI.

Nota

Untuk keterangan lebih lanjut, lihat Memanipulasi Informasi Kelas dan Instansi.