Freigeben über


WdfDeviceQueryInterfaceProperty-Funktion (wdfdevice.h)

[Gilt nur für UMDF]

Die WdfDeviceQueryInterfaceProperty-Methode ruft eine angegebene Geräteschnittstelleneigenschaft ab.

Syntax

NTSTATUS WdfDeviceQueryInterfaceProperty(
  [in]  WDFDEVICE                           Device,
  [in]  PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
  [in]  ULONG                               BufferLength,
  [out] PVOID                               PropertyBuffer,
  [out] PULONG                              ResultLength,
  [out] PDEVPROPTYPE                        Type
);

Parameter

[in] Device

Ein Handle für ein Framework-Geräteobjekt.

[in] PropertyData

Ein Zeiger auf eine WDF_DEVICE_INTERFACE_PROPERTY_DATA Struktur, die die abzurufende Geräteschnittstelleneigenschaft identifiziert.

[in] BufferLength

Die Größe des Puffers in Bytes, auf den von PropertyBuffer verwiesen wird.

[out] PropertyBuffer

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die angeforderte Geräteschnittstelleneigenschaft empfängt. Der Zeiger kann NULL sein, wenn der BufferLength-Parameter 0 ist.

[out] ResultLength

Ein vom Aufrufer bereitgestellter Speicherort, der bei der Rückgabe die Größe (in Bytes) der Informationen enthält, die WdfDeviceQueryInterfaceProperty in PropertyBuffer gespeichert hat. Wenn der Rückgabewert der Funktion STATUS_BUFFER_TOO_SMALL ist, erhält dieser Speicherort die erforderliche Puffergröße.

[out] Type

Ein Zeiger auf eine DEVPROPTYPE-typisierte Variable, die den Typ der Eigenschaftendaten identifiziert, die WdfDeviceQueryInterfaceProperty im Puffer gespeichert hat, auf den PropertyBuffer verweist.

Rückgabewert

Wenn die WdfDeviceQueryInterfaceProperty-Methode keine Fehler aufweist, gibt sie STATUS_SUCCESS zurück. Weitere Rückgabewerte sind:

Rückgabecode Beschreibung
STATUS_BUFFER_TOO_SMALL
Der Eingabepuffer ist zu klein, um die Informationen zu empfangen.
STATUS_INVALID_PARAMETER_2
Der angegebene Parameterwert ist ungültig.
 

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

Hinweise

Vor dem Empfangen von Geräteeigenschaftendaten rufen Treiber in der Regel die WdfDeviceQueryInterfaceProperty-Methode auf, nur um die erforderliche Puffergröße abzurufen. Bei einigen Eigenschaften kann sich die Datengröße zwischen der Rückgabe der erforderlichen Größe und dem erneuten Aufruf von WdfDeviceQueryInterfaceProperty ändern. Daher sollten Treiber WdfDeviceQueryInterfaceProperty in einer Schleife aufrufen, die ausgeführt wird, bis die Rückgabe status nicht STATUS_BUFFER_TOO_SMALL wird.

Es empfiehlt sich , WdfDeviceQueryInterfaceProperty nur dann zu verwenden, wenn die erforderliche Puffergröße bekannt ist und sich nicht ändert, da in diesem Fall der Treiber WdfDeviceQueryInterfaceProperty nur einmal aufrufen muss. Wenn die erforderliche Puffergröße unbekannt ist oder variiert, sollte der Treiber WdfDeviceAllocAndQueryInterfaceProperty aufrufen.

Informationen zu verwandten Methoden finden Sie unter Zugreifen auf das Unified Device-Eigenschaftsmodell.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8.1
Zielplattform Universell
UMDF-Mindestversion 2.0
Kopfzeile wdfdevice.h (einschließen von Wdf.h)
Bibliothek WUDFx02000.lib
DLL WUDFx02000.dll
IRQL PASSIVE_LEVEL

Weitere Informationen

WDF_DEVICE_INTERFACE_PROPERTY_DATA

WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceAssignInterfaceProperty