Bagikan melalui


Menjelaskan Jalur Objek Instans

Jalur objek instans menjelaskan lokasi instans kelas tertentu dalam namespace tertentu.

Anda dapat memiliki beberapa jenis jalur objek instans yang berbeda:

  • Penuh

    Jalur objek instans lengkap menambahkan nama dan nilai properti kunci untuk kelas ke jalur objek kelas penuh.

    Contoh berikut menunjukkan definisi jalur objek instans lengkap.

    \\Server\Namespace:Class.KeyName="KeyValue"
    
  • Sanak

    Jalur objek relatif mengacu pada instans yang terletak di namespace saat ini di server saat ini. Jalur relatif terdiri dari nama kelas diikuti dengan nama dan nilai properti kunci instans ini.

    Contoh berikut menunjukkan definisi jalur objek instans relatif.

    MyClass.MyProp="e:"
    
  • Relatif dengan satu kunci

    Untuk kelas dengan hanya satu properti yang ditetapkan sebagai kunci, Anda dapat menghilangkan nama properti kunci.

    Contoh berikut menunjukkan definisi jalur objek instans relatif dengan satu kunci.

    MyClass="e:"
    
  • Relatif dengan beberapa kunci

    Gunakan koma untuk membedakan kunci-kunci dalam satu instans yang memiliki beberapa kunci.

    Contoh berikut menunjukkan definisi jalur objek instans relatif dengan beberapa kunci.

    MyOtherClass.FirstKey=1,SecondKey=2
    
  • Relatif untuk kelas singleton

    Jalur objek relatif untuk kelas singleton terdiri dari nama kelas diikuti oleh notasi "=@".

    Contoh berikut menunjukkan definisi jalur objek instans relatif untuk kelas singleton.

    MySingletonClass=@
    

Prosedur berikut menjelaskan cara memperoleh instance kelas.

Untuk mengambil instans kelas

  1. Inisialisasi string yang berisi jalur objek dengan panggilan ke fungsiSysAllocString.

  2. Menginisialisasi objek yang akan menerima instans.

  3. Ambil objek dengan panggilan ke IWbemServices::GetObject atau IWbemServices::GetObjectAsync.

    Untuk menggunakan GetObjectAsync, Anda harus menerapkan antarmukaIWbemSink.

Pernyataan #include berikut diperlukan untuk kode yang tercantum nanti dalam topik ini untuk dikompilasi dengan benar.

#include <wbemidl.h>

Contoh kode berikut menjelaskan cara mengambil instans kelas menggunakan jalur objek.

IWbemServices* pWbemSvcs = 0;

BSTR Path = SysAllocString(L"ComPort=2");    
IWbemClassObject *pComPort = 0;
pWbemSvcs->GetObject(Path, 0, 0, &pComPort, 0);

Untuk instans kelas yang menentukan beberapa properti sebagai kunci, WMI tidak memerlukan pengurutan properti kunci tertentu di jalur objek. Anda hanya perlu menentukan nilai setiap properti di jalur objek.

Contoh kode berikut menjelaskan dua deskripsi kunci yang setara.

MyClass.IntVal=33,StrVal="AAA"
MyClass.StrVal="AAA",IntVal=33