Freigeben über


WdfDeviceAssignInterfaceProperty-Funktion (wdfdevice.h)

Wichtig

Gilt nur für UMDF

Die WdfDeviceAssignInterfaceProperty Methode ändert den aktuellen Wert einer Geräteschnittstelleneigenschaft.

Anmerkung

Um eine Geräteschnittstelleneigenschaft abzurufen oder zu ändern, muss ein KMDF-Treiber IoGetDeviceInterfacePropertyData- oder IoSetDeviceInterfacePropertyData- aufrufen.

Syntax

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

Ein Handle zu einem Framework-Geräteobjekt.

[in] PropertyData

Ein Zeiger auf WDF_DEVICE_INTERFACE_PROPERTY_DATA Struktur.

[in] Type

Ein DEVPROPTYPE-typed-Wert, der den Typ der Daten angibt, die in PropertyBuffer-bereitgestellt werden.

[in] BufferLength

Gibt die Länge des Puffers in Bytes an, auf den PropertyBuffer verweist.

[in, optional] PropertyBuffer

Ein Zeiger auf die Eigenschaftendaten der Geräteschnittstelle. Legen Sie diesen Parameter auf NULL- fest, um die angegebene Eigenschaft zu löschen.

Rückgabewert

Wenn die WdfDeviceAssignInterfaceProperty- Methode keine Fehler aufweist, wird STATUS_SUCCESS zurückgegeben. Weitere Rückgabewerte sind:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER Einer der Parameter ist falsch.

Die Methode gibt möglicherweise andere NTSTATUS-Wertezurück.

Bemerkungen

Informationen zu verwandten Methoden finden Sie unter Zugreifen auf das Unified Device Property Model.

Beispiele

Im folgenden Codebeispiel wird eine WDF_DEVICE_INTERFACE_PROPERTY_DATA Struktur initialisiert und anschließend WdfDeviceAssignInterfacePropertyaufgerufen.

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;
}

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8.1
Zielplattform- Universal
Mindest-UMDF-Version 2.0
Header- wdfdevice.h (einschließen Wdf.h)
Library WUDFx02000.lib
DLL- WUDFx02000.dll
IRQL- PASSIVE_LEVEL

Siehe auch

WDF_DEVICE_INTERFACE_PROPERTY_DATA

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceQueryInterfaceProperty