IoSetNextIrpStackLocation 函式 (wdm.h)
IoSetNextIrpStackLocation 例程會將驅動程式配置的 IRP 堆疊位置設定為呼叫端的堆疊位置。
語法
void IoSetNextIrpStackLocation(
[in, out] PIRP Irp
);
參數
[in, out] Irp
要設定堆疊位置的 IRP 指標。
傳回值
無
備註
一般而言,驅動程式很少會使用此例程。 它主要是由驅動程式在 IRP 中要求自己的堆疊位置使用,而 IRP 已自行配置,以傳送至另一個驅動程式。
IoSetNextIrpStackLocation 通常不需要,因為:
- 驅動程式收到它從另一個較高層級驅動程序傳遞的 IRP,因此它已經擁有堆疊位置,
- 或者,驅動程式已配置 IRP,但不需要自己的堆疊位置,因為它可以保留其位址可以傳遞至其 IoCompletion 例程的內容區塊中所需的一切。
驅動程式無法透過呼叫 IoBuildAsynchronousFsdRequest、IoBuildDeviceIoControlRequest 或 IoBuildSynchronousFsdRequest 所配置的任何 IRP 呼叫 IoSetNextIrpStackLocation。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平台 | 桌面 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
IRQL | 任何層級 |