IWbemClassObject::Dapatkan metode (wbemcli.h)
Metode IWbemClassObject::Get mengambil nilai properti yang ditentukan, jika ada. Metode ini juga dapat mengembalikan properti sistem.
Sintaks
HRESULT Get(
[in] LPCWSTR wszName,
[in] long lFlags,
[out] VARIANT *pVal,
[out, optional] CIMTYPE *pType,
[out, optional] long *plFlavor
);
Parameter
[in] wszName
Nama properti yang diinginkan. Ini diperlakukan sebagai baca-saja.
[in] lFlags
Dicadangkan. Parameter ini harus 0 (nol).
[out] pVal
Jika berhasil, parameter ini diberi jenis dan nilai yang benar untuk kualifikasi, dan fungsi VariantInit dipanggil pada pVal. Pemanggil bertanggung jawab untuk memanggil VariantClear pada pVal ketika nilai tidak diperlukan. Jika ada kesalahan, nilai yang menunjuk pVal tidak dimodifikasi. Jika nilai pVal yang tidak diinisialisasi diteruskan ke metode , maka pemanggil harus memeriksa nilai pengembalian metode, dan memanggil VariantClear hanya ketika metode berhasil.
[out, optional] pType
Bisa NULL. Jika bukan NULL, ia menerima jenis CIM properti, yaitu salah satu konstanta jenis CIM, seperti CIM_SINT32, CIM_STRING, dan sebagainya. Untuk informasi selengkapnya tentang nilai-nilai ini, lihat CIMTYPE_ENUMERATION. Ini menunjukkan semantik CIM dari nilai properti yang dikemas ke dalam VARIAN.
[out, optional] plFlavor
Bisa NULL. Jika bukan NULL, nilai LONG yang ditujukkan untuk menerima informasi tentang asal properti. Untuk informasi selengkapnya, lihat Qualifier Flavors dan WBEM_FLAVOR_TYPE.
WBEM_FLAVOR_ORIGIN_SYSTEM
Properti adalah properti sistem standar.
WBEM_FLAVOR_ORIGIN_PROPAGATED
Hanya untuk kelas. Properti diwariskan dari kelas induk.
Hanya untuk instans. Properti diwarisi dari kelas induk, tetapi belum dimodifikasi pada tingkat instans.
WBEM_FLAVOR_ORIGIN_LOCAL
Hanya untuk kelas. Properti milik kelas turunan.
Hanya untuk instans. Properti dimodifikasi pada tingkat instans—yaitu, nilai disediakan, atau kualifikasi ditambahkan atau dimodifikasi.
Mengembalikan nilai
Metode ini mengembalikan HRESULT yang menunjukkan status panggilan metode. Daftar berikut mencantumkan nilai yang terkandung dalam HRESULT. Untuk nilai HRESULT umum, lihat Kode Kesalahan Sistem.
Keterangan
Jika jenis properti adalah jalur objek, string tanggal/waktu, atau jenis khusus lainnya, maka nilai yang dikembalikan dalam VARIAN tidak berisi informasi yang cukup untuk mengidentifikasi jenis yang benar. Parameter pvtType out menunjukkan ini.
Untuk mendapatkan bentuk string dari jenis Common Information Model (CIM) untuk properti , penunjuk IWbemQualifierSet untuk properti harus diperoleh, dan kualifikasi Cimtype diambil. Kualifikasi itu adalah bentuk string dari jenis CIM, seperti sint32 versus CIM_SINT32, yang merupakan konstanta numerik.
Contoh
Untuk diskusi dan contoh pembuatan kueri yang diperluas di C++ dan WMI, lihat Membuat Kueri WMI Di C++ di CodeProject.
Contoh C++ berikut menunjukkan cara mengambil nama kelas CIM dari objek dengan menggunakan properti sistem __CLASS. Kode memerlukan pernyataan dan referensi #include berikut untuk dikompilasi.#include <iostream>
using namespace std;
#include <wbemidl.h>
#pragma comment(lib, "wbemuuid.lib")
//Assumes that pObj is defined as a pointer
// to an IWbemClassObject object.
VARIANT v;
BSTR strClassProp = SysAllocString(L"__CLASS");
HRESULT hr;
hr = pObj->Get(strClassProp, 0, &v, 0, 0);
SysFreeString(strClassProp);
// check the HRESULT to see if the action succeeded.
if (SUCCEEDED(hr) && (V_VT(&v) == VT_BSTR))
{
wprintf(L"The class name is %s\n.", V_BSTR(&v));
}
else
{
wprintf(L"Error in getting specified object\n");
}
VariantClear(&v);
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 | CIMWin32.dll; Esscli.dll; Fastprox.dll; FrameDyn.dll; FrameDynOS.dll; Krnlprov.dll; Ncprov.dll; Wbemcore.dll; Wbemess.dll; Wmipiprt.dll |