Поделиться через


Функция 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

Указатель на подпрограмму CustomDpc для связи с DPC.

[in, optional] DeferredContext

Задает значение, передаваемое в качестве параметра DeferredContextв CustomDpc.

Возвращаемое значение

None

Remarks

Вызывающий объект может ставить в очередь инициализированный DPC с KeInsertQueueDpc. Вызывающий объект также может настроить объект таймера, связанный с инициализированным объектом DPC, и поставить DPC в очередь с KeSetTimer.

Хранилище для объекта DPC должно быть резидентным: в расширении устройства объекта устройства, созданного драйвером, в расширении контроллера созданного драйвером объекта контроллера или в невыгваемом пуле, выделенном вызывающим объектом.

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень

См. также раздел

CustomDpc

KeInsertQueueDpc

KeRemoveQueueDpc

KeSetTimer