Condividi tramite


Funzione FltRetainSwappedBufferMdlAddress (fltkernel.h)

FltRetainSwappedBufferMdlAddress impedisce a Gestione filtri di liberare l'elenco dei descrittori di memoria (MDL) per un buffer scambiato da un driver minifiltro.

Sintassi

void FltRetainSwappedBufferMdlAddress(
  [in] PFLT_CALLBACK_DATA CallbackData
);

Parametri

[in] CallbackData

Puntatore alla struttura dei dati di callback per l'operazione.

Valore restituito

Nessuno

Osservazioni

Quando un driver minifilter viene scambiato in un nuovo buffer in una routine di callback di preoperazione (PFLT_PRE_OPERATION_CALLBACK), Gestione filtri libera automaticamente il file MDL del buffer quando la routine di callback corrispondente (PFLT_POST_OPERATION_CALLBACK) restituisce .

Il driver minifilter può impedire a Gestione filtri di liberare il file MDL chiamando FltRetainSwappedBufferMdlAddress dalla routine di callback di postoperazione.

Dopo aver chiamato FltRetainSwappedBufferMdlAddress, il chiamante è responsabile della liberazione del file MDL chiamando una routine come IoFreeMdl.

fltRetainSwappedBufferMdlAddress può essere chiamato solo da una routine di callback postoperation.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione fltkernel.h (include Fltkernel.h)
libreria FltMgr.lib
dll Fltmgr.sys
IRQL Qualsiasi livello

Vedere anche

FltDecodeParameters

FltGetSwappedBufferMdlAddress

IoFreeMdl

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK