Compartir a través de


Función IoForwardIrpSynchronously (wdm.h)

La rutina IoForwardIrpSynchronously envía un IRP a un controlador especificado y espera a que ese controlador complete el IRP.

Sintaxis

BOOLEAN IoForwardIrpSynchronously(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

Parámetros

[in] DeviceObject

Especifica el objeto de dispositivo del controlador al que se envía el IRP.

[in] Irp

Especifica el IRP que se va a enviar.

Valor devuelto

IoForwardIrpSynchronously devuelve TRUE si el IRP se envía correctamente. De lo contrario, devuelve FALSE.

Comentarios

Use la rutina IoForwardIrpSynchronously para reenviar sincrónicamente el IRP actual al siguiente controlador de la pila. (Para reenviar de forma asincrónica el IRP, use las rutinas IoCopyCurrentIrpStackLocationToNext, IoCallDriver e IoSetCompletionRoutine ).

La rutina IoForwardIrpSynchronously copia la ubicación de pila actual en la siguiente ubicación de pila. A continuación, el controlador especificado en DeviceObject usa esa ubicación de pila como ubicación de pila actual. Si no hay ninguna ubicación de pila siguiente disponible, la rutina devuelve FALSE. Si la rutina devuelve TRUE, el IRP se ha enviado al controlador especificado y ese controlador ha completado su procesamiento de este IRP.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows XP y versiones posteriores de Windows.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= APC_LEVEL
Reglas de cumplimiento de DDI PnpIrpCompletion(wdm)

Consulte también

IoCallDriver

IoCopyCurrentIrpStackLocationToNext

IoSetCompletionRoutine