Bagikan melalui


Fungsi WdfDeviceAssignInterfaceProperty (wdfdevice.h)

Penting

Hanya berlaku untuk UMDF

Metode WdfDeviceAssignInterfaceProperty memodifikasi nilai properti antarmuka perangkat saat ini.

Catatan

Untuk mengambil atau memodifikasi properti antarmuka perangkat, driver KMDF harus memanggil IoGetDeviceInterfacePropertyData atau IoSetDeviceInterfacePropertyData secara langsung.

Sintaks

NTSTATUS WdfDeviceAssignInterfaceProperty(
  [in]           WDFDEVICE                           Device,
  [in]           PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
  [in]           DEVPROPTYPE                         Type,
  [in]           ULONG                               BufferLength,
  [in, optional] PVOID                               PropertyBuffer
);

Parameter

[in] Device

Handel ke objek perangkat kerangka kerja.

[in] PropertyData

Penunjuk ke struktur WDF_DEVICE_INTERFACE_PROPERTY_DATA .

[in] Type

Nilai berjenis DEVPROPTYPE yang menentukan jenis data yang disediakan di PropertyBuffer.

[in] BufferLength

Menentukan panjang, dalam byte, dari buffer yang dituju oleh PropertyBuffer .

[in, optional] PropertyBuffer

Penunjuk ke data properti antarmuka perangkat. Atur parameter ini ke NULL untuk menghapus properti yang ditentukan.

Nilai kembali

Jika metode WdfDeviceAssignInterfaceProperty tidak mengalami kesalahan, metode tersebut mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER Salah satu parameter salah.

Metode ini mungkin mengembalikan nilai NTSTATUS lainnya.

Keterangan

Untuk informasi tentang metode terkait, lihat Mengakses Model Properti Perangkat Terpadu.

Contoh

Contoh kode berikut menginisialisasi struktur WDF_DEVICE_INTERFACE_PROPERTY_DATA lalu memanggil WdfDeviceAssignInterfaceProperty.

DEFINE_DEVPROPKEY(DEVPKEY_ToasterCrispLevelDword, 0x5d0ba64a, 0x2396, 0x4bc9, 0xbf, 0x49, 0x52, 0x1d, 0xa6, 0x2b, 0x1b, 0xed, 3);  // DEVPROP_TYPE_UINT32

ULONG crispLevel = 0;
WDF_DEVICE_INTERFACE_PROPERTY_DATA propertyData;

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT(
                          &propertyData, 
                          &GUID_DEVINTERFACE_TOASTER_DRIVER
                          &DEVPKEY_ToasterCrispLevelDword
                          );

status = WdfDeviceAssignInterfaceProperty(device, 
                                          &propertData,
                                          DEVPROP_TYPE_UINT32,
                                          sizeof(crispLevel),
                                          &crispLevel);
if (!NT_SUCCESS(status)) {
    return status;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8.1
Target Platform Universal
Versi UMDF minimum 2.0
Header wdfdevice.h (termasuk Wdf.h)
Pustaka WUDFx02000.lib
DLL WUDFx02000.dll
IRQL PASSIVE_LEVEL

Lihat juga

WDF_DEVICE_INTERFACE_PROPERTY_DATA

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceQueryInterfaceProperty