Bagikan melalui


Fungsi CreateClassEnumWmi

Mengembalikan enumerator untuk semua kelas yang memenuhi kriteria seleksi yang ditentukan.

Catatan

API ini hanya untuk penggunaan internal. API ini tidak dimaksudkan untuk digunakan dari kode pengembang.

Sintaks

HRESULT CreateClassEnumWmi (
   [in] BSTR                    strSuperclass,
   [in] long                    lFlags,
   [in] IWbemContext*           pCtx,
   [out] IEnumWbemClassObject** ppEnum,
   [in] DWORD                   authLevel,
   [in] DWORD                   impLevel,
   [in] IWbemServices*          pCurrentNamespace,
   [in] BSTR                    strUser,
   [in] BSTR                    strPassword,
   [in] BSTR                    strAuthority
);

Parameter

strSuperclass
[in] Jika bukan null atau kosong, menentukan nama kelas induk; enumerator hanya mengembalikan subkelas dari kelas ini. Jika null atau kosong dan lFlags merupakan WBEM_FLAG_SHALLOW, hanya mengembalikan kelas tingkat atas (kelas tanpa kelas induk). Jika null atau kosong dan lFlags merupakan WBEM_FLAG_DEEP, maka akan mengembalikan semua kelas di namespace layanan.

lFlags
[in] Kombinasi bendera yang memengaruhi perilaku fungsi ini. Nilai berikut ditentukan dalam file header WbemCli.h, atau Anda dapat menentukannya sebagai konstanta dalam kode Anda:

Terus-menerus Nilai Deskripsi
WBEM_FLAG_USE_AMENDED_QUALIFIERS 0x20000 Jika diatur, fungsi mengambil kualifikasi yang diubah yang disimpan di namespace layanan lokal dari lokal koneksi saat ini.
Jika tidak diatur, fungsi hanya mengambil kualifikasi yang disimpan di namespace layanan langsung.
WBEM_FLAG_DEEP 0 Enumerasi mencakup semua subkelas dalam hierarki, tetapi bukan kelas ini.
WBEM_FLAG_SHALLOW 1 Enumerasi hanya mencakup instans murni dari kelas ini dan mengecualikan semua instans subkelas yang menyediakan properti yang tidak ditemukan di kelas ini.
WBEM_FLAG_RETURN_IMMEDIATELY 0x10 Bendera menyebabkan panggilan semi-sinkron.
WBEM_FLAG_FORWARD_ONLY 0x20 Fungsi mengembalikan enumerator hanya maju. Biasanya, enumerator hanya maju lebih cepat dan menggunakan lebih sedikit memori daripada enumerator konvensional, tetapi mereka tidak mengizinkan panggilan ke Klon.
WBEM_FLAG_BIDIRECTIONAL 0 WMI mempertahankan penunjuk ke objek dalam enumerasi sampai mereka dilepaskan.

Bendera yang direkomendasikan adalah WBEM_FLAG_RETURN_IMMEDIATELY dan WBEM_FLAG_FORWARD_ONLY untuk performa terbaik.

pCtx
[in] Biasanya, nilai ini adalah null. Jika tidak, ini adalah penunjuk ke instans IWbemContext yang dapat digunakan oleh penyedia yang menyediakan kelas yang diminta.

ppEnum
[out] Menerima penunjuk ke enumerator.

authLevel
[in] Tingkat otorisasi.

impLevel
[in] Tingkat peniruan.

pCurrentNamespace
[in] Penunjuk ke objek IWbemServices yang mewakili namespace layanan saat ini.

strUser
[in] Nama pengguna. Lihat fungsi ConnectServerWmi untuk informasi selengkapnya.

strPassword
[in] Kata sandi. Lihat fungsi ConnectServerWmi untuk informasi selengkapnya.

strAuthority
[in] Nama domain pengguna. Lihat fungsi ConnectServerWmi untuk informasi selengkapnya.

Mengembalikan nilai

Nilai berikut yang dikembalikan oleh fungsi ini ditentukan dalam file header WbemCli.h, atau Anda dapat menentukannya sebagai konstanta dalam kode Anda:

Terus-menerus Nilai Deskripsi
WBEM_E_ACCESS_DENIED 0x80041003 Pengguna tidak memiliki izin untuk melihat satu atau beberapa kelas yang dapat dikembalikan oleh fungsi.
WBEM_E_FAILED 0x80041001 Terjadi kesalahan yang tidak tentu.
WBEM_E_INVALID_CLASS 0x80041010 strSuperClass tidak ada.
WBEM_E_INVALID_PARAMETER 0x80041008 Parameter tidak valid.
WBEM_E_OUT_OF_MEMORY 0x80041006 Tidak tersedia cukup memori untuk menyelesaikan operasi.
WBEM_E_SHUTTING_DOWN 0x80041033 WMI mungkin dihentikan dan dihidupkan ulang. Panggil ConnectServerWmi lagi.
WBEM_E_TRANSPORT_FAILURE 0x80041015 Tautan panggilan prosedur jarak jauh (RPC) antara proses saat ini dan WMI telah gagal.
WBEM_S_NO_ERROR 0 Panggilan fungsi berhasil.

Keterangan

Fungsi ini membungkus panggilan ke metode IWbemServices::CreateClassEnum.

Jika panggilan fungsi gagal, Anda dapat memperoleh informasi kesalahan tambahan dengan memanggil fungsi GetErrorInfo.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: WMINet_Utils.idl

Versi .NET Framework: Tersedia sejak 4.7.2

Lihat juga