IoGetAttachedDevice-Funktion (ntifs.h)

Die IoGetAttachedDevice-Routine gibt einen Zeiger auf das Geräteobjekt der höchsten Ebene zurück, das dem angegebenen Gerät zugeordnet ist.

Syntax

PDEVICE_OBJECT IoGetAttachedDevice(
  [in] PDEVICE_OBJECT DeviceObject
);

Parameter

[in] DeviceObject

Ein Zeiger auf das Geräteobjekt, für das das oberste angeschlossene Gerät zurückgegeben werden soll.

Rückgabewert

IoGetAttachedDevice gibt das Gerät der höchsten Ebene zurück, das an das angegebene Gerät angefügt ist.

Hinweise

Wenn für das von DeviceObject angegebene Geräteobjekt keine anderen Geräteobjekte angefügt sind, sind DeviceObject und der zurückgegebene Zeiger gleich.

IoGetAttachedDevice unterscheidet sich von IoGetAttachedDeviceReference in den folgenden Punkten:

  • IoGetAttachedDevice erhöht die Verweisanzahl für das Geräteobjekt nicht. (Daher ist kein übereinstimmender Aufruf von ObDereferenceObject erforderlich.)

  • Aufrufer von IoGetAttachedDevice müssen sicherstellen, dass dem Stapel während der Ausführung von IoGetAttachedDevice keine Geräteobjekte hinzugefügt oder daraus entfernt werden. Aufrufer, die dies nicht tun können, müssen stattdessen IoGetAttachedDeviceReference verwenden.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Weitere Informationen

IoGetAttachedDeviceReference

ObDereferenceObject