Freigeben über


FltCbdqEnable-Funktion (fltkernel.h)

FltCbdqEnable ermöglicht eine Rückrufdatenwarteschlange, die durch einen vorherigen Aufruf von FltCbdqDisabledeaktiviert wurde.

Syntax

VOID FLTAPI FltCbdqEnable(
  [in, out] PFLT_CALLBACK_DATA_QUEUE Cbdq
);

Parameter

[in, out] Cbdq

Zeiger auf die Rückrufdatenwarteschlange.

Rückgabewert

Nichts

Bemerkungen

FltCbdqEnable eine Rückrufdatenwarteschlange erneut aktivieren, die durch einen vorherigen Aufruf von FltCbdqDisabledeaktiviert wurde. Nachdem die Rückrufdatenwarteschlange erneut aktiviert wurde, kann sie erneut neue Elemente akzeptieren.

Minifiltertreiber können die FltCbdqXxx Routinen verwenden, um eine Rückrufdatenwarteschlange für IRP-basierte E/A-Vorgänge zu implementieren. Durch die Verwendung dieser Routinen können Minifiltertreiber ihre Warteschlange abbruchsicher machen; Das System verarbeitet den E/A-Abbruch für den Minifiltertreiber transparent.

Die FltCbdqXxx Routinen können nur für IRP-basierte E/A-Vorgänge verwendet werden. Um festzustellen, ob eine bestimmte Rückrufdatenstruktur einen IRP-basierten E/A-Vorgang darstellt, verwenden Sie das FLT_IS_IRP_OPERATION Makro.

Wenn die Warteschlange durch eine Drehsperre geschützt ist, anstelle eines mutex-Objekts oder Ressourcenvariablen, kann der Aufrufer von FltCbdqEnable unter IRQL <= DISPATCH_LEVEL ausgeführt werden. Wenn ein Mutex oder eine Ressource verwendet wird, muss der Aufrufer bei IRQL <= APC_LEVEL ausgeführt werden.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- fltkernel.h (include Fltkernel.h)
IRQL- Siehe Abschnitt "Hinweise"

Siehe auch

FLT_CALLBACK_DATA_QUEUE

FLT_IS_IRP_OPERATION

FltCbdqDisable

FltCbdqInitialize

FltCbdqInsertIo

FltCbdqRemoveIo

FltCbdqRemoveNextIo