Fungsi IoSetDevicePropertyData (wdm.h)

Rutinitas IoSetDevicePropertyData memodifikasi pengaturan saat ini untuk properti perangkat.

Sintaks

NTSTATUS IoSetDevicePropertyData(
  [in]           PDEVICE_OBJECT   Pdo,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           LCID             Lcid,
  [in]           ULONG            Flags,
  [in]           DEVPROPTYPE      Type,
  [in]           ULONG            Size,
  [in, optional] PVOID            Data
);

Parameter

[in] Pdo

Penunjuk ke objek perangkat fisik (PDO) untuk perangkat yang sedang dikueri.

[in] PropertyKey

Penunjuk ke struktur DEVPROPKEY yang menentukan kunci properti perangkat.

[in] Lcid

Pengidentifikasi lokal. Atur parameter ini ke nilai LCID khusus bahasa atau ke LOCALE_NEUTRAL.

LOCALE_NEUTRAL LCID menentukan bahwa properti netral bahasa (yaitu, tidak khusus untuk bahasa apa pun).

Jangan atur parameter ini ke LOCALE_SYSTEM_DEFAULT atau LOCALE_USER_DEFAULT.

Untuk informasi selengkapnya tentang nilai LCID khusus bahasa, lihat Struktur LCID.

[in] Flags

Atur parameter ini ke PLUGPLAY_PROPERTY_PERSISTENT jika nilai properti yang ditetapkan oleh rutinitas ini harus bertahan di seluruh komputer dimulai ulang. Jika tidak, atur Bendera ke nol.

Windows 8 dan Windows Server 2012 dan sistem operasi yang lebih baru memperlakukan Benderaseolah-olah PLUGPLAY_PROPERTY_PERSISTENT selalu dilewati.

[in] Type

Nilai DEVPROPTYPE yang menentukan jenis data yang disediakan dalam buffer Data .

[in] Size

Ukuran, dalam byte, dari buffer tempat Data menunjuk.

[in, optional] Data

Penunjuk ke data properti perangkat. Atur parameter ini ke NULL untuk menghapus properti yang ditentukan. Jika Data bukan NULL, rutin menyimpan salinan internal nilai properti. Buffer yang diacu oleh Data tidak perlu tetap valid setelah panggilan kembali.

Nilai kembali

IoSetDevicePropertyData mengembalikan STATUS_SUCCESS jika panggilan berhasil, atau kode NTSTATUS yang sesuai pada kegagalan.

Keterangan

Untuk melihat jenis properti yang tersedia untuk digunakan oleh rutinitas ini, lihat DEVPROP_TYPE_BYTE dan halaman yang berdekatan untuk DEVPROP_TYPE_*.

Driver mode kernel menggunakan rutinitas IoSetDevicePropertyData untuk memodifikasi properti perangkat yang didefinisikan sebagai bagian dari model properti perangkat terpadu. Untuk informasi selengkapnya tentang properti perangkat, lihat Properti Perangkat.

Untuk menghapus properti untuk lokal tertentu, berikan nilai LCID khusus bahasa di Lcid dan NULL di Data.

Untuk menghapus properti untuk semua lokal, teruskan LOCALE_NEUTRAL di Lcid dan NULL di Data.

Untuk mengubah properti untuk lokal tertentu, berikan nilai LCID khusus bahasa di Lcid dan non-NULL di Data.

Untuk mengubah properti untuk semua lokal, teruskan LOCALE_NEUTRAL di Lcid dan non-NULL di Data.

Dimulai dengan Windows 8 dan Windows Server 2012 melewati LOCALE_NEUTRAL di Lcid diperlakukan seperti lokal lainnya.

Driver dapat menggunakan rutinitas IoGetDevicePropertyData untuk mendapatkan nilai saat ini untuk properti perangkat.

Penelepon IoSetDeviceProperty harus berjalan di IRQL <= APC_LEVEL dalam konteks utas sistem.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows Vista.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Lihat juga

DEVPROPKEY

DEVPROPTYPE

IoGetDevicePropertyData