KeInitializeDpc 函数 (wdm.h)
KeInitializeDpc 例程初始化 DPC 对象,并为该对象注册 CustomDpc 例程。
语法
void KeInitializeDpc(
[out] __drv_aliasesMem PRKDPC Dpc,
[in] PKDEFERRED_ROUTINE DeferredRoutine,
[in, optional] __drv_aliasesMem PVOID DeferredContext
);
参数
[out] Dpc
指向 KDPC 结构的指针,该结构表示要初始化的 DPC 对象。 调用方必须从常驻内存中为结构分配存储。
[in] DeferredRoutine
指向要与 DPC 关联的 CustomDpc 例程的指针。
[in, optional] DeferredContext
指定要作为 DeferredContext 参数传递给 CustomDpc 的值。
返回值
无
备注
调用方可以使用 KeInsertQueueDpc 将初始化的 DPC 排队。 调用方还可以设置与初始化的 DPC 对象关联的计时器对象,并使用 KeSetTimer 将 DPC 排队。
DPC 对象的存储必须驻留在驱动程序创建的设备对象的设备扩展中、驱动程序创建的控制器对象的控制器扩展中,或位于调用方分配的非分页池中。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 通用 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 任何级别 |