Freigeben über


IoOpenDeviceInterfaceRegistryKey-Funktion (wdm.h)

Die IoOpenDeviceInterfaceRegistryKey Routine gibt ein Handle an einen Registrierungsschlüssel zum Speichern von Informationen zu einer bestimmten Geräteschnittstelleninstanz zurück.

Syntax

NTSTATUS IoOpenDeviceInterfaceRegistryKey(
  [in]  PUNICODE_STRING SymbolicLinkName,
  [in]  ACCESS_MASK     DesiredAccess,
  [out] PHANDLE         DeviceInterfaceRegKey
);

Parameter

[in] SymbolicLinkName

Zeigen Sie auf eine Zeichenfolge, die die Geräteschnittstelleninstanz identifiziert. Diese Zeichenfolge wurde aus einem vorherigen Aufruf von IoGetDeviceInterfaces, IoGetDeviceInterfaceAliasoder IoRegisterDeviceInterfaceabgerufen.

[in] DesiredAccess

Gibt den ACCESS_MASK Wert an, der den Zugriff darstellt, den der Aufrufer für den Schlüssel benötigt, z. B. KEY_READ, KEY_WRITE oder KEY_ALL_ACCESS. Eine Beschreibung der einzelnen KEY_XXX Zugriffsrecht finden Sie unter ZwCreateKey-.

[out] DeviceInterfaceRegKey

Zeigen Sie auf ein zurückgegebenes Handle auf den angeforderten Registrierungsschlüssel, wenn der Aufruf erfolgreich ist.

Rückgabewert

IoOpenDeviceInterfaceRegistryKey gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich war. Mögliche Fehlerrückgabewerte sind:

Rückgabecode Beschreibung
STATUS_OBJECT_NAME_NOT_FOUND
Die Routine konnte keinen Registrierungsschlüssel für die Geräteschnittstelleninstanz finden, wahrscheinlich aufgrund eines Fehlers im SymbolicLinkName.
STATUS_OBJECT_PATH_NOT_FOUND
Die Routine konnte keinen Registrierungsschlüssel für die Geräteschnittstelleninstanz finden, wahrscheinlich aufgrund eines Fehlers im SymbolicLinkName.
STATUS_INVALID_PARAMETER
Gibt möglicherweise einen Fehler im SymbolicLinkNamean.

Bemerkungen

IoOpenDeviceInterfaceRegistryKey öffnet einen nichtvolatile Unterschlüssel des Registrierungsschlüssels für die Geräteschnittstelleninstanz, die durch SymbolicLinkNameangegeben wird. Treiber können Informationen in diesem Unterschlüssel speichern, der für diese Instanz der Geräteschnittstelle spezifisch ist, z. B. die Standardauflösung für eine Kamera. Benutzermodusanwendungen können mithilfe von SetupDiXxx Routinen auf diesen Unterschlüssel zugreifen.

Der Treiber muss ZwClose- aufrufen, um das von dieser Routine zurückgegebene Handle zu schließen, wenn der Zugriff nicht mehr erforderlich ist.

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

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL (siehe Abschnitt "Hinweise")
DDI-Complianceregeln HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Siehe auch

ACCESS_MASK

IoGetDeviceInterfaceAlias

IoGetDeviceInterfaces

IoRegisterDeviceInterface-

ZwClose