Freigeben über


KeInitializeDpc-Funktion (wdm.h)

Die KeInitializeDpc-Routine initialisiert ein DPC-Objekt und registriert eine CustomDpc-Routine für dieses Objekt.

Syntax

void KeInitializeDpc(
  [out]          __drv_aliasesMem PRKDPC Dpc,
  [in]           PKDEFERRED_ROUTINE      DeferredRoutine,
  [in, optional] __drv_aliasesMem PVOID  DeferredContext
);

Parameter

[out] Dpc

Zeiger auf eine KDPC-Struktur , die das zu initialisierende DPC-Objekt darstellt. Der Aufrufer muss Speicher für die Struktur aus dem residenten Arbeitsspeicher zuordnen.

[in] DeferredRoutine

Zeiger auf die CustomDpc-Routine , die dem DPC zugeordnet werden soll.

[in, optional] DeferredContext

Gibt den Wert an, der als DeferredContext-Parameter an CustomDpc übergeben werden soll.

Rückgabewert

Keine

Bemerkungen

Der Aufrufer kann einen initialisierten DPC mit KeInsertQueueDpc in die Warteschlange stellen. Der Aufrufer kann auch ein Timerobjekt einrichten, das dem initialisierten DPC-Objekt zugeordnet ist, und den DPC mit KeSetTimer in die Warteschlange stellen.

Der Speicher für das DPC-Objekt muss resident sein: in der Geräteerweiterung eines vom Treiber erstellten Geräteobjekts, in der Controllererweiterung eines vom Treiber erstellten Controllerobjekts oder in einem vom Aufrufer zugewiesenen Pool ohne Auslagerung.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Beliebige Ebene

Weitere Informationen

CustomDpc

KeInsertQueueDpc

KeRemoveQueueDpc

KeSetTimer