Freigeben über


IoGetDeviceAttachmentBaseRef-Funktion (ntifs.h)

Die IoGetDeviceAttachmentBaseRef-Routine gibt einen Zeiger auf das Geräteobjekt der niedrigsten Ebene in einem Dateisystem oder Gerätetreiberstapel zurück.

Syntax

PDEVICE_OBJECT IoGetDeviceAttachmentBaseRef(
  [in] PDEVICE_OBJECT DeviceObject
);

Parameter

[in] DeviceObject

Ein Zeiger auf ein Geräteobjekt im Stapel.

Rückgabewert

IoGetDeviceAttachmentBaseRef gibt einen Zeiger auf das Geräteobjekt am unteren Rand des Dateisystems oder Gerätetreiberstapels zurück. Wenn das angegebene Geräteobjekt nicht an einen Treiberstapel angefügt ist, gibt IoGetDeviceAttachmentBaseRef den Geräteobjektzeiger in DeviceObject zurück.

Hinweise

Ein Dateisystemfiltertreiber ruft in der Regel IoGetDeviceAttachmentBaseRef auf, um das Geräteobjekt der niedrigsten Ebene in einem Dateisystemtreiberstapel abzurufen. Dies geschieht häufig, wenn der Filtertreiber eine Benachrichtigung erhält, dass sich ein Dateisystem als aktives Dateisystem registriert oder die Registrierung aufgehoben hat. Die Benachrichtigungsrückrufroutine des Filtertreibers ruft IoGetDeviceAttachmentBaseRef auf, um einen Zeiger auf das Steuerungsgeräteobjekt des Dateisystems abzurufen, und ruft dann ObQueryNameString auf, um den Namen dieses Objekts zu Debugzwecken abzurufen.

IoGetDeviceAttachmentBaseRef erhöht die Verweisanzahl für das Geräteobjekt am unteren Rand des Stapels. Daher muss jeder erfolgreiche Aufruf von IoGetDeviceAttachmentBaseRef durch einen nachfolgenden Aufruf von ObDereferenceObject abgeglichen werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 SP4-Updaterollup; Windows XP
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Weitere Informationen

IoEnumerateDeviceObjectList

IoGetLowerDeviceObject

IoRegisterFsRegistrationChange

IoUnregisterFsRegistrationChange

ObDereferenceObject

ObQueryNameString