Función IoGetAttachedDeviceReference (wdm.h)
La rutina IoGetAttachedDeviceReference devuelve un puntero al objeto de dispositivo de nivel más alto de una pila de controladores e incrementa el recuento de referencias en ese objeto.
Sintaxis
PDEVICE_OBJECT IoGetAttachedDeviceReference(
[in] PDEVICE_OBJECT DeviceObject
);
Parámetros
[in] DeviceObject
Puntero al objeto de dispositivo para el que se recupera el objeto de dispositivo conectado más arriba.
Valor devuelto
IoGetAttachedDeviceReference devuelve un puntero al objeto de dispositivo de nivel más alto en una pila de objetos de dispositivo conectados después de incrementar el recuento de referencias en el objeto.
Comentarios
Si el objeto de dispositivo de DeviceObject no tiene objetos de dispositivo conectados a él, DeviceObject y el puntero devuelto son iguales.
Los escritores de controladores de dispositivo deben asegurarse de que, cuando hayan completado todas las operaciones que les requerían realizar esta llamada, llamen a ObDereferenceObject con el puntero del objeto de dispositivo devuelto por esta rutina. Si no lo hace, impedirá que el sistema libere o elimine el objeto de dispositivo debido a un recuento de referencias pendiente.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows 2000. |
Plataforma de destino | Universal |
Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | DanglingDeviceObjectReference(wdm), HwStorPortProhibitedDDIs(storport) |