Freigeben über


IoGetDeviceInterfacePropertyData-Funktion (wdm.h)

Die IoGetDeviceInterfacePropertyData Routine ruft den aktuellen Wert einer Geräteschnittstelleneigenschaftab.

Syntax

NTSTATUS IoGetDeviceInterfacePropertyData(
  [in]  PUNICODE_STRING  SymbolicLinkName,
  [in]  const DEVPROPKEY *PropertyKey,
  [in]  LCID             Lcid,
        ULONG            Flags,
  [in]  ULONG            Size,
  [out] PVOID            Data,
  [out] PULONG           RequiredSize,
  [out] PDEVPROPTYPE     Type
);

Parameter

[in] SymbolicLinkName

Ein Zeiger auf eine Zeichenfolge, die die Geräteschnittstelleninstanz identifiziert. Diese Zeichenfolge wurde aus einem vorherigen Aufruf der IoGetDeviceInterfaces, IoGetDeviceInterfaceAliasoder IoRegisterDeviceInterface Routine abgerufen.

[in] PropertyKey

Ein Zeiger auf eine DEVPROPKEY- Struktur, die den Eigenschaftenschlüssel der Geräteschnittstelle enthält.

[in] Lcid

Gibt einen Gebietsschemabezeichner an. Legen Sie diesen Parameter entweder auf einen sprachspezifischen LCID-Wert oder auf LOCALE_NEUTRALfest. Die LOCALE_NEUTRAL LCID gibt an, dass die Eigenschaft sprachneutral ist (d. h. nicht spezifisch für jede Sprache). Legen Sie diesen Parameter nicht auf LOCALE_SYSTEM_DEFAULT oder LOCALE_USER_DEFAULTfest. Weitere Informationen zu sprachspezifischen LCID-Werten finden Sie unter LCID-Struktur.

Flags

Reserviert für die Systemverwendung. Treiber sollten diesen Wert auf Null festlegen.

[in] Size

Gibt die Größe des Puffers in Bytes an, auf den Data verweist.

[out] Data

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, in den die Routine die Geräteschnittstelleneigenschaftendaten schreibt.

[out] RequiredSize

Ein Zeiger auf eine ULONG-Variable, in die IoGetDeviceInterfacePropertyData die erforderliche Größe der Eigenschaftendaten schreibt. Wenn die Routine erfolgreich ist, ist der erforderliche Größenwert die Anzahl der Bytes, auf die die Routine in den Ausgabepuffer schreibt, auf den Data verweist. Wenn die Routine STATUS_BUFFER_TOO_SMALL zurückgibt, ist der erforderliche Größenwert die Größe des Puffers, den der Aufrufer für diesen Eigenschaftswert zuweisen soll.

[out] Type

Ein Zeiger auf eine DEVPROPTYPE- Variable. Wenn IoGetDeviceInterfacePropertyData die Eigenschaftendaten erfolgreich abruft, schreibt die Routine den Eigenschaftstypwert in diese Variable. Dieser Wert gibt den Typ der Eigenschaftendaten an, die sich im Data Puffer befinden.

Rückgabewert

IoGetDeviceInterfacePropertyData gibt STATUS_SUCCESS zurück, wenn dies erfolgreich ist. Mögliche Fehlerrückgabewerte sind die folgenden Statuscodes.

Rückgabecode Beschreibung
STATUS_BUFFER_TOO_SMALL Der Puffer, auf den Data verweist, ist zu klein, um die Eigenschaftendaten zu enthalten. * RequiredSize- enthält die erforderliche Pufferlänge.
STATUS_UNSUCCESSFUL Der angegebene LCID-Wert ist ungültig.
STATUS_NOT_IMPLEMENTED Die angegebene Eigenschaft wird nicht unterstützt.

Bemerkungen

Kernelmodustreiber verwenden die IoGetDeviceInterfacePropertyData Routine zum Abrufen von Geräteschnittstelleneigenschaften, die als Teil des einheitlichen Geräteeigenschaftenmodellsdefiniert sind. Weitere Informationen zu Geräteoberflächeneigenschaften finden Sie unter Device Properties.

Treiber können die IoSetDeviceInterfacePropertyData Routine verwenden, um eine Geräteschnittstelleneigenschaft zu ändern.

Aufrufer von IoGetDeviceInterfacePropertyData- müssen unter IRQL = PASSIVE_LEVEL im Kontext eines Systemthreads ausgeführt werden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows 8 und höheren Versionen von Windows.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL

Siehe auch

DEVPROPKEY-

DEVPROPTYPE-

IoSetDeviceInterfacePropertyData-