Função IoInitializeIrp (wdm.h)
A rotina IoInitializeIrp inicializa um determinado IRP alocado pelo chamador.
Sintaxe
void IoInitializeIrp(
[in, out] PIRP Irp,
[in] USHORT PacketSize,
[in] CCHAR StackSize
);
Parâmetros
[in, out] Irp
Ponteiro para o IRP a ser inicializado.
[in] PacketSize
Especifica o tamanho em bytes do IRP.
[in] StackSize
Especifica o número de locais de pilha no IRP.
Retornar valor
Nenhum
Comentários
Os drivers usam IoInitializeIrp para inicializar IRPs o driver alocado como memória bruta. Não use IoInitializeIrp para inicializar um IRP alocado por IoAllocateIrp. IoAllocateIrp inicializa automaticamente os membros do IRP.
Os drivers podem usar IoInitializeIrp para reinicializar um IRP para reutilização somente em determinadas circunstâncias. Consulte Reutilizando IRPs para obter detalhes.
Se o driver associar um MDL ao IRP alocado, o driver será responsável por liberar o MDL quando o IRP for concluído.
Um driver intermediário ou de nível mais alto também pode chamar IoBuildDeviceIoControlRequest, IoBuildAsynchronousFsdRequest ou IoBuildSynchronousFsdRequest para configurar solicitações enviadas a drivers de nível inferior. Somente um driver de nível mais alto pode chamar IoMakeAssociatedIrp.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade da DDI | HwStorPortProhibitedDDIs(storport), IoReuseIrp(wdm) |