Bagikan melalui


Metode IWbemServices::CreateInstanceEnum (wbemcli.h)

Metode IWbemServices::CreateInstanceEnum membuat enumerator yang mengembalikan instans kelas tertentu sesuai dengan kriteria pilihan yang ditentukan pengguna. Metode ini mendukung kueri WQL sederhana; Kueri yang lebih kompleks dapat diproses menggunakan metode IWbemServices::ExecQuery .

Sintaks

HRESULT CreateInstanceEnum(
  [in]  const BSTR           strFilter,
  [in]  long                 lFlags,
  [in]  IWbemContext         *pCtx,
  [out] IEnumWbemClassObject **ppEnum
);

Parameter

[in] strFilter

BSTR valid yang berisi nama kelas yang instansnya diinginkan. Parameter ini tidak boleh NULL.

[in] lFlags

Bendera berikut memengaruhi perilaku metode ini. Nilai yang disarankan untuk parameter ini adalah WBEM_FLAG_RETURN_IMMEDIATELY dan WBEM_FLAG_FORWARD_ONLY untuk performa terbaik.

WBEM_FLAG_USE_AMENDED_QUALIFIERS

Jika bendera ini diatur, WMI mengambil kualifikasi yang diubah yang disimpan di namespace layanan lokal koneksi saat ini. Jika tidak diatur, hanya kualifikasi yang disimpan di namespace langsung yang diambil.

WBEM_FLAG_DEEP

Bendera ini memaksa enumerasi untuk menyertakan ini dan semua subkelas dalam hierarki.

WBEM_FLAG_SHALLOW

Bendera ini memaksa enumerasi untuk menyertakan hanya instans murni dari kelas ini, tidak termasuk semua instans subkelas yang menyediakan properti yang tidak ditemukan di kelas ini.

WBEM_FLAG_RETURN_IMMEDIATELY

Bendera ini menyebabkan ini menjadi panggilan semisinkron. Untuk informasi selengkapnya, lihat Memanggil Metode.

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_BIDIRECTIONAL

Bendera ini menyebabkan Manajemen Windows mempertahankan pointer ke objek enumerasi hingga klien merilis enumerator. Karena pointer objek tidak segera dilepaskan, metode ini mungkin gagal dengan hResultWBEM_E_OUT_OF_MEMORY jika klien mencoba menghitung sejumlah besar objek. Bendera ini tersirat secara default jika Anda mengatur parameter lFlags ke 0 (nol).

WBEM_FLAG_DIRECT_READ

Bendera ini menyebabkan akses langsung ke penyedia untuk kelas yang ditentukan tanpa memperhatikan kelas atau subkelas induknya.

[in] pCtx

Biasanya NULL. Jika tidak, ini adalah penunjuk ke objek IWbemContext yang dapat digunakan oleh penyedia yang menyediakan instans 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

Menerima penunjuk ke enumerator, yang memiliki jumlah referensi positif. Penelepon harus memanggil IUnknown::Release pada pointer setelah tidak lagi diperlukan.

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

Ini bukan kesalahan bagi enumerator yang dikembalikan untuk memiliki elemen nol.

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::CreateInstanceEnumAsync

Mengambil Kode Kesalahan