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 |