Compartir a través de


Función IoGetDeviceAttachmentBaseRef (ntifs.h)

La rutina IoGetDeviceAttachmentBaseRef devuelve un puntero al objeto de dispositivo de nivel más bajo de una pila de controladores de dispositivo o sistema de archivos.

Sintaxis

PDEVICE_OBJECT IoGetDeviceAttachmentBaseRef(
  [in] PDEVICE_OBJECT DeviceObject
);

Parámetros

[in] DeviceObject

Puntero a un objeto de dispositivo de la pila.

Valor devuelto

IoGetDeviceAttachmentBaseRef devuelve un puntero al objeto de dispositivo en la parte inferior del sistema de archivos o la pila de controladores de dispositivo. Si el objeto de dispositivo especificado no está asociado a una pila de controladores, IoGetDeviceAttachmentBaseRef devuelve el puntero del objeto de dispositivo en DeviceObject.

Comentarios

Un controlador de filtro del sistema de archivos normalmente llama a IoGetDeviceAttachmentBaseRef para obtener el objeto de dispositivo de nivel más bajo en una pila de controladores del sistema de archivos. A menudo, esto se hace cuando el controlador de filtro recibe una notificación de que un sistema de archivos se ha registrado o anulado el registro como un sistema de archivos activo. La rutina de devolución de llamada de notificación del controlador de filtro llama a IoGetDeviceAttachmentBaseRef para obtener un puntero al objeto de dispositivo de control del sistema de archivos y, a continuación, llama a ObQueryNameString para recuperar el nombre de este objeto con fines de depuración.

IoGetDeviceAttachmentBaseRef incrementa el recuento de referencias en el objeto de dispositivo en la parte inferior de la pila. Por lo tanto, cada llamada correcta a IoGetDeviceAttachmentBaseRef debe coincidir con una llamada posterior a ObDereferenceObject.

Requisitos

Requisito Value
Cliente mínimo compatible Paquete acumulativo de actualizaciones de Windows 2000 SP4; Windows XP
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Consulte también

IoEnumerateDeviceObjectList

IoGetLowerDeviceObject

IoRegisterFsRegistrationChange

IoUnregisterFsRegistrationChange

ObDereferenceObject

ObQueryNameString