Freigeben über


FltGetNewSystemBufferAddress-Funktion (fltkernel.h)

Die FltGetNewSystemBufferAddress-Funktion ruft den AssociatedIrp.SystemBuffer-Puffer ab, den das Dateisystem zugeordnet hat. Diese Funktion wird von der Nachrückrufroutine eines Minifiltertreibers aufgerufen.

Syntax

PVOID FLTAPI FltGetNewSystemBufferAddress(
  [in] PFLT_CALLBACK_DATA CallbackData
);

Parameter

[in] CallbackData

Ein Zeiger auf eine FLT_CALLBACK_DATA-Struktur , die einen E/A-Vorgang darstellt.

Rückgabewert

Wenn der AssociatedIrp.SystemBuffer-Puffer vom Dateisystem zugeordnet wurde, gibt FltGetNewSystemBufferAddress einen Zeiger auf diesen Puffer zurück. Andernfalls wird NULL zurückgegeben.

Hinweise

Die Nachrückrufroutine eines Minifiltertreibers ruft die Funktion FltGetNewSystemBufferAddress auf, um einen Zeiger auf den AssociatedIrp.SystemBuffer-Puffer abzurufen, den das Dateisystem zugewiesen hat. Ein Minifiltertreiber sollte diese Funktion nur aufrufen, wenn das FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER-Flag in CallbackData.Flags festgelegt ist.

Wenn das Dateisystem einen eigenen AssociatedIrp.SystemBuffer-Puffer zuordnet, legt der Filter-Manager das flag FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER fest. Dies signalisiert dem Minifilter, dass der Puffer, den er im Vorvorgang empfangen hat, nicht dem Puffer entspricht, der die Daten aus dem Dateisystem liest.

Wenn das FLTFL_CALLBACK_DATA_NEW_SYSTEM_BUFFER-Flag nicht festgelegt ist, gibt diese Routine NULL zurück.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows 7 und höheren Versionen des Windows-Betriebssystems.
Zielplattform Universell
Header fltkernel.h (fltkernel.h einschließen)
Bibliothek Fltmgr.lib
DLL Fltmgr.sys
IRQL <= DISPATCH_LEVEL

Weitere Informationen

FLT_CALLBACK_DATA