Função IoSetNextIrpStackLocation (wdm.h)
A rotina IoSetNextIrpStackLocation define o local da pilha IRP em um IRP alocado pelo driver para o do chamador.
Sintaxe
void IoSetNextIrpStackLocation(
[in, out] PIRP Irp
);
Parâmetros
[in, out] Irp
Ponteiro para o IRP cujo local de pilha deve ser definido.
Retornar valor
Nenhum
Comentários
Em geral, essa rotina raramente é usada por drivers. Ele é usado principalmente por drivers que exigem seu próprio local de pilha em um IRP que eles alocaram, por conta própria, para enviar para outro driver.
IoSetNextIrpStackLocation geralmente não é necessário porque:
- O driver recebeu o IRP que está passando de outro driver de nível superior e, portanto, ele já possui um local de pilha,
- Ou, o driver alocou o IRP, mas não precisa de seu próprio local de pilha porque pode manter tudo o que precisa em um bloco de contexto cujo endereço pode ser passado para sua rotina de IoCompletion .
Um driver não pode chamar IoSetNextIrpStackLocation com qualquer IRP alocado chamando IoBuildAsynchronousFsdRequest, IoBuildDeviceIoControlRequest ou IoBuildSynchronousFsdRequest.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | Qualquer nível |