KeInitializeDpc function (wdm.h)
The KeInitializeDpc routine initializes a DPC object, and registers a CustomDpc routine for that object.
Syntax
void KeInitializeDpc(
[out] __drv_aliasesMem PRKDPC Dpc,
[in] PKDEFERRED_ROUTINE DeferredRoutine,
[in, optional] __drv_aliasesMem PVOID DeferredContext
);
Parameters
[out] Dpc
Pointer to a KDPC structure that represents the DPC object to initialize. The caller must allocate storage for the structure from resident memory.
[in] DeferredRoutine
Pointer to the CustomDpc routine to associate with the DPC.
[in, optional] DeferredContext
Specifies the value to pass as the DeferredContext parameter to CustomDpc.
Return value
None
Remarks
The caller can queue an initialized DPC with KeInsertQueueDpc. The caller also can set up a timer object associated with the initialized DPC object and queue the DPC with KeSetTimer.
Storage for the DPC object must be resident: in the device extension of a driver-created device object, in the controller extension of a driver-created controller object, or in nonpaged pool allocated by the caller.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available starting with Windows 2000. |
Target Platform | Universal |
Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Any level |