Função IoForwardIrpSynchronously (wdm.h)

A rotina IoForwardIrpSynchronously envia um IRP para um driver especificado e aguarda o driver concluir o IRP.

Sintaxe

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

Parâmetros

[in] DeviceObject

Especifica o objeto de dispositivo do driver para o qual o IRP é enviado.

[in] Irp

Especifica o IRP a ser enviado.

Retornar valor

IoForwardIrpSynchronously retornará TRUE se o IRP for enviado com êxito. Caso contrário, retornará FALSE.

Comentários

Use a rotina IoForwardIrpSynchronously para encaminhar de forma síncrona o IRP atual para o próximo driver na pilha. (Para encaminhar de forma assíncrona o IRP, use as rotinas IoCopyCurrentIrpStackLocationToNext, IoCallDriver e IoSetCompletionRoutine .)

A rotina IoForwardIrpSynchronously copia o local da pilha atual para o próximo local da pilha. Esse local de pilha é então usado como o local da pilha atual pelo driver especificado em DeviceObject. Se nenhum próximo local de pilha estiver disponível, a rotina retornará FALSE. Se a rotina retornar TRUE, o IRP será enviado para o driver especificado e esse driver concluirá o processamento desse IRP.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows XP e versões posteriores do Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL
Regras de conformidade de DDI PnpIrpCompletion(wdm)

Confira também

IoCallDriver

IoCopyCurrentIrpStackLocationToNext

IoSetCompletionRoutine