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
Wbemdisp.h
Pustaka jenis
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

Lihat juga

SWbemServices

SWbemObjectSet