Metode IWbemServices::ExecNotificationQuery (wbemcli.h)

Metode IWbemServices::ExecNotificationQuery menjalankan kueri untuk menerima peristiwa. Panggilan segera kembali, dan pengguna dapat melakukan polling enumerator yang dikembalikan untuk peristiwa saat mereka tiba. Melepaskan enumerator yang dikembalikan membatalkan kueri.

Sintaks

HRESULT ExecNotificationQuery(
  [in]  const BSTR           strQueryLanguage,
  [in]  const BSTR           strQuery,
  [in]  long                 lFlags,
  [in]  IWbemContext         *pCtx,
  [out] IEnumWbemClassObject **ppEnum
);

Parameter

[in] strQueryLanguage

BSTR valid yang berisi salah satu bahasa kueri yang didukung oleh Manajemen Windows. Ini tidak boleh NULL. Saat ini, hanya WMI Query Language (WQL) yang didukung.

[in] strQuery

BSTR valid yang berisi teks kueri terkait peristiwa. Ini tidak boleh NULL. Untuk informasi selengkapnya tentang membangun string kueri WMI, lihat Mengkueri dengan WQL dan referensi WQL .

[in] lFlags

Parameter ini harus diatur ke WBEM_FLAG_RETURN_IMMEDIATELY dan WBEM_FLAG_FORWARD_ONLY atau panggilan gagal.

WBEM_FLAG_FORWARD_ONLY

Bendera ini menyebabkan enumerator hanya maju dikembalikan. Enumerator hanya penerusan umumnya jauh lebih cepat dan menggunakan lebih sedikit memori daripada enumerator konvensional tetapi tidak mengizinkan panggilan ke Kloning atau Reset.

WBEM_FLAG_RETURN_IMMEDIATELY

Pengguna harus menentukan bendera ini atau panggilan gagal. Ini karena peristiwa diterima terus menerus, yang berarti pengguna harus menyurvei enumerator yang dikembalikan. Memblokir panggilan ini tanpa batas waktu sambil menunggu kemungkinan peristiwa memblokir utas untuk waktu yang tidak terbatas. Untuk informasi selengkapnya, lihat Memanggil Metode.

[in] pCtx

Biasanya NULL. Jika tidak, ini adalah penunjuk ke objek IWbemContext yang dapat digunakan oleh penyedia yang menyediakan peristiwa yang diminta. Nilai dalam objek konteks harus ditentukan dalam dokumentasi untuk penyedia yang bersangkutan. Untuk informasi selengkapnya tentang parameter ini, lihat Melakukan Panggilan ke WMI.

[out] ppEnum

Jika tidak ada kesalahan yang terjadi, parameter ini menerima enumerator yang memungkinkan pemanggil untuk mengambil instans dalam kumpulan hasil kueri. Pemanggil secara berkala memanggil IEnumWbemClassObject::Next untuk melihat apakah ada peristiwa yang tersedia. Perhatikan bahwa, dalam penggunaan ini, Reset tidak memindahkan enumerator kembali ke awal urutan peristiwa; tidak berpengaruh. Parameter dapat terus menerima peristiwa hingga Rilis dipanggil pada enumerator yang dikembalikan.

Nilai kembali

Metode ini mengembalikan HRESULT yang menunjukkan status panggilan metode. Daftar berikut mencantumkan nilai yang terkandung dalam HRESULT.

Jika gagal, Anda dapat memperoleh informasi apa pun yang tersedia dari fungsi COM GetErrorInfo.

Kode kesalahan khusus COM juga dapat dikembalikan jika masalah jaringan menyebabkan Anda kehilangan koneksi jarak jauh ke Manajemen Windows.

Keterangan

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 kuerinya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Server minimum yang didukung Windows Server 2008
Target Platform Windows
Header wbemcli.h (termasuk Wbemidl.h)
Pustaka Wbemuuid.lib
DLL Fastprox.dll; Esscli.dll; FrameDyn.dll; FrameDynOS.dll; Ntevt.dll; Stdprov.dll; Viewprov.dll; Wbemcomn.dll; Wbemcore.dll; Wbemess.dll; Wbemsvc.dll; Wmipicmp.dll; Wmidcprv.dll; Wmipjobj.dll; Wmiprvsd.dll

Lihat juga

IWbemServices

IWbemServices::ExecNotificationQueryAsync

Mengkueri dengan WQL

Menerima Peristiwa selama Durasi Aplikasi Anda

Mengambil Kode Kesalahan