struktur WDF_PROPERTY_STORE_ROOT (wudfddi_types.h)

[Peringatan: UMDF 2 adalah versi terbaru UMDF dan pengganti UMDF 1. Semua driver UMDF baru harus ditulis menggunakan UMDF 2. Tidak ada fitur baru yang ditambahkan ke UMDF 1 dan ada dukungan terbatas untuk UMDF 1 pada versi Windows 10 yang lebih baru. Driver Universal Windows harus menggunakan UMDF 2. Untuk informasi selengkapnya, lihat Mulai menggunakan UMDF.]

Struktur WDF_PROPERTY_STORE_ROOT berisi informasi yang mengidentifikasi penyimpanan properti UMDF.

Sintaks

typedef struct _WDF_PROPERTY_STORE_ROOT {
  ULONG                         LengthCb;
  WDF_PROPERTY_STORE_ROOT_CLASS RootClass;
  union {
    struct {
      PCWSTR ServiceName;
    } HardwareKey;
    struct {
      LPCGUID InterfaceGUID;
      PCWSTR  ReferenceString;
    } DeviceInterfaceKey;
    struct {
      PCWSTR LegacyMapName;
    } LegacyHardwareKey;
  } Qualifier;
} WDF_PROPERTY_STORE_ROOT, *PWDF_PROPERTY_STORE_ROOT;

Anggota

LengthCb

Panjangnya, dalam byte, dari struktur ini.

RootClass

Nilai WDF_PROPERTY_STORE_ROOT_CLASS-ketik yang mengidentifikasi penyimpanan properti.

Qualifier

Qualifier.HardwareKey

Qualifier.HardwareKey.ServiceName

Penunjuk ke string karakter yang dihentikan NULL yang mengidentifikasi subkunci khusus driver di bawah kunci perangkat keras perangkat di registri. Untuk informasi selengkapnya tentang anggota ini, lihat bagian Keterangan berikut ini.

Qualifier.DeviceInterfaceKey

Qualifier.DeviceInterfaceKey.InterfaceGUID

Pointer ke GUID yang mengidentifikasi antarmuka perangkat. Driver sebelumnya harus disebut IWDFDevice::CreateDeviceInterface untuk mendaftarkan antarmuka perangkat.

Qualifier.DeviceInterfaceKey.ReferenceString

Penunjuk ke string karakter yang dihentikan NULL yang mengidentifikasi string referensi untuk antarmuka perangkat. Driver harus menentukan anggota ini jika menentukan string referensi ketika disebut IWDFDevice::CreateDeviceInterface. Jika tidak, anggota ini harus NULL.

Qualifier.LegacyHardwareKey

Qualifier.LegacyHardwareKey.LegacyMapName

Penunjuk ke string karakter yang dihentikan NULL yang mengidentifikasi subkunci di bawah kunci HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP dalam registri. Kunci ini hanya digunakan oleh beberapa driver lama.

Keterangan

Struktur WDF_PROPERTY_STORE_ROOT digunakan sebagai input ke IWDFPropertyStoreFactory::RetrieveDevicePropertyStore dan IWDFUnifiedPropertyStoreFactory::RetrieveUnifiedDevicePropertyStore.

Penyimpanan properti UMDF mewakili kunci registri yang dapat diakses driver. Sebelum driver Anda memanggil salah satu metode di atas, driver harus menginisialisasi struktur WDF_PROPERTY_STORE_ROOT . Driver harus nol struktur dan kemudian mengatur anggota LengthCb ke panjang struktur.

Untuk membuka kunci perangkat lunak, driver Anda harus:

  1. Atur anggota LengthCb struktur ke ukuran struktur.
  2. Atur anggota RootClass struktur ke WdfPropertyStoreRootClassSoftwareKey.
Untuk membuka kunci perangkat keras perangkat, driver Anda harus:
  1. Atur anggota LengthCb struktur ke ukuran struktur.
  2. Atur anggota RootClass struktur ke WdfPropertyStoreRootClassHardwareKey.
  3. Tetapkan nilai untuk anggota Qualifier.HardwareKey.ServiceName . Nilai ini harus salah satu dari yang berikut ini:
    • WDF_PROPERTY_STORE_HARDWARE_KEY_ROOT, untuk membuka subkunci \Parameter Perangkat di bawah kunci perangkat keras perangkat. Driver hanya dapat memperoleh akses baca ke subkunjen ini.
    • WDF_PROPERTY_STORE_HARDWARE_KEY_DEFAULT, untuk membuka subkunjud yang cocok dengan nama layanan driver, di bawah subkunia \Parameter Perangkat . Driver dapat memperoleh akses baca atau tulis ke subkunjen ini. Driver dapat secara opsional membuat subkunci jika tidak ada.
    • String karakter yang disediakan driver, untuk membuka subkunci dengan nama yang cocok dengan string karakter, di bawah subkunci \Parameter Perangkat . Driver dapat memperoleh akses baca atau tulis ke subkunjen ini. Driver dapat secara opsional membuat subkunci jika tidak ada.

    Jika driver Anda membuat subkunci di bawah kunci perangkat keras perangkat, yang terbaik adalah menentukan WDF_PROPERTY_STORE_HARDWARE_KEY_DEFAULT karena UMDF membuat subkunci yang cocok dengan nama layanan driver. Penggunaan nama ini memastikan bahwa setiap driver membuat subkunci bernama unik. Driver tidak boleh menentukan WDF atau WUDF sebagai nama subkunci.

Untuk membuka kunci antarmuka perangkat, driver Anda harus:
  1. Atur anggota LengthCb struktur ke ukuran struktur.
  2. Atur anggota RootClass struktur ke WdfPropertyStoreRootClassDeviceInterfaceKey.
  3. Atur anggota Qualifier.DeviceInterfaceKey.InterfaceGUID ke GUID yang ditentukan driver ke panggilan sebelumnya ke IWDFDevice::CreateDeviceInterface.
  4. Atur anggota Qualifier.DeviceInterfaceKey.ReferenceString ke string referensi yang ditentukan driver ke panggilan sebelumnya ke IWDFDevice::CreateDeviceInterface, atau NULL jika driver tidak menentukan string referensi.
Driver dapat memperoleh akses baca atau tulis ke kunci antarmuka perangkat.

Untuk membuka kunci DEVICEMAP, driver Anda harus:

  1. Atur anggota LengthCb struktur ke ukuran struktur.
  2. Atur anggota RootClass struktur ke WdfPropertyStoreRootClassLegacyHardwareKey.
  3. Atur anggota Qualifier.LegacyHardwareKey.LegacyMapName ke string karakter yang menentukan subkunci di bawah kunci HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP di registri.
Driver dapat memperoleh akses baca atau tulis ke subkunjen yang ditentukan di bawah kunci DEVICEMAP . Driver dapat secara opsional membuat subkunci jika tidak ada. Namun, driver yang membuat subkunci ini harus menentukan bendera WdfPropertyStoreCreateVolatile sehingga sistem menghapus subkunci setiap kali dimulai ulang.

Untuk informasi selengkapnya tentang kunci registri ini, lihat Menggunakan Registri di Driver berbasis UMDF.

Persyaratan

Persyaratan Nilai
Versi UMDF minimum 1.9
Header wudfddi_types.h (termasuk Wudfddi.h)

Lihat juga

IWDFPropertyStoreFactory::RetrieveDevicePropertyStore