Metode SWbemServices.InstancesOf
Metode InstancesOf dari objek SWbemServices membuat enumerator yang mengembalikan instans kelas tertentu sesuai dengan kriteria pilihan yang ditentukan pengguna. Metode ini mengimplementasikan kueri sederhana. Kueri yang lebih kompleks mungkin memerlukan penggunaan SWbemServices.ExecQuery.
Metode ini dipanggil dalam mode semisinkron. Untuk informasi selengkapnya, lihat Memanggil Metode.
Untuk penjelasan tentang sintaks ini, lihat Konvensi Dokumen untuk Scripting API.
Sintaks
objWbemObjectSet = .InstancesOf( _
ByVal strClass, _
[ ByVal iFlags ], _
[ ByVal objWbemNamedValueSet ] _
)
Parameter
-
strClass
-
Wajib diisi. String yang berisi nama kelas yang diinginkan instans. Parameter ini tidak boleh kosong.
-
iFlags [opsional]
-
Parameter ini menentukan seberapa rinci panggilan menghitung dan jika panggilan ini segera kembali. Nilai default untuk parameter ini adalah wbemFlagReturnImmediately. Parameter ini dapat menerima nilai berikut.
-
wbemFlagForwardOnly (32 (0x20))
-
Menyebabkan enumerator hanya maju dikembalikan. Enumerator hanya penerusan umumnya jauh lebih cepat dan menggunakan lebih sedikit memori daripada enumerator konvensional, tetapi mereka tidak mengizinkan panggilan untuk SWbemObject.Clone_.
-
wbemFlagBidirectional (0 (0x0))
-
Menyebabkan WMI mempertahankan pointer ke objek enumerasi hingga klien merilis enumerator.
-
wbemFlagReturnImmediately (16 (0x10))
-
Nilai default untuk parameter ini. Bendera ini menyebabkan panggilan segera kembali.
-
wbemFlagReturnWhenComplete (0 (0x0))
-
Menyebabkan panggilan ini diblokir hingga kueri selesai. Bendera ini memanggil metode dalam mode sinkron.
-
wbemQueryFlagShallow (1 (0x1))
-
Memaksa enumerasi untuk menyertakan hanya subkelas langsung dari kelas induk yang ditentukan.
-
wbemQueryFlagDeep (0 (0x0))
-
Nilai default untuk parameter ini. Nilai ini memaksa enumerasi untuk menyertakan semua kelas dalam hierarki.
-
wbemFlagUseAmendedQualifiers (131072 (0x20000))
-
Menyebabkan WMI mengembalikan data amandemen kelas dengan definisi kelas dasar. Untuk informasi selengkapnya, lihat Melokalisasi Informasi Kelas WMI.
objWbemNamedValueSet [opsional]
Biasanya, ini tidak ditentukan. Jika tidak, ini adalah objek SWbemNamedValueSet yang elemennya mewakili informasi konteks yang dapat digunakan oleh penyedia yang melayani permintaan. Penyedia yang mendukung atau memerlukan informasi tersebut harus mendokumentasikan nama nilai yang dikenali, jenis data nilai, nilai yang diizinkan, dan semantik.
Nilai kembali
Jika berhasil, metode mengembalikan SWbemObjectSet.
Kode kesalahan
Setelah menyelesaikan metode InstancesOf , objek Err mungkin berisi salah satu kode kesalahan dalam daftar berikut.
Catatan
Enumerator yang dikembalikan dengan elemen nol bukanlah kesalahan.
-
wbemErrAccessDenied - 2147749891 (0x80041003)
-
Pengguna saat ini tidak memiliki izin untuk melihat instans kelas yang ditentukan.
-
wbemErrFailed - 2147749889 (0x80041001)
-
Terjadi kesalahan yang tidak ditentukan.
-
wbemErrInvalidClass - 2147749904 (0x80041010)
-
Kelas yang ditentukan tidak valid.
-
wbemErrInvalidParameter - 2147749896 (0x80041008)
-
Parameter yang ditentukan tidak valid.
-
wbemErrOutOfMemory - 2147749894 (0x80041006)
-
Tidak cukup memori untuk menyelesaikan operasi.
Keterangan
Metode InstancesOf hanya berfungsi untuk objek kelas.
Secara default, InstancesOf melakukan pengambilan mendalam. Artinya, InstancesOf mengambil semua instans sumber daya terkelola yang Anda identifikasi dan semua instans semua subkelas yang ditentukan di bawah kelas target. Misalnya, skrip berikut mengambil semua sumber daya yang dimodelkan oleh semua kelas dinamis yang ditentukan di bawah kelas abstrak CIM_Service.
strComputer = "."
Set objSWbemServices = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colSWbemObjectSet = objSWbemServices.InstancesOf("CIM_Service")
For Each objSWbemObject In colSWbemObjectSet
Wscript.Echo "Object Path: " & objSWbemObject.Path_.Path
Next
Jika Anda menjalankan skrip ini, Anda akan mendapatkan informasi kembali. Namun, informasi ini tidak akan terbatas pada layanan yang diinstal pada komputer. Sebaliknya, ini akan mencakup informasi dari semua kelas anak CIM_Service, termasuk Win32_SystemDriver dan Win32_ApplicationService.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows Vista |
Server minimum yang didukung |
Windows Server 2008 |
Header |
|
Pustaka jenis |
|
DLL |
|
CLSID |
CLSID_SWbemServices |
IID |
IID_ISWbemServices |