Funzione FltReleaseContext (fltkernel.h)
FltReleaseContext decrementa il conteggio dei riferimenti in un contesto.
Sintassi
VOID FLTAPI FltReleaseContext(
[in] PFLT_CONTEXT Context
);
Parametri
[in] Context
Puntatore al contesto. Deve essere un puntatore valido a un oggetto di contesto per un volume, un'istanza, un flusso o un handle di flusso. Questo parametro è obbligatorio e non può essere NULL.
Valore restituito
nessuno
Osservazioni
Per altre informazioni sui contesti, vedere Informazioni sui contesti minifilter.
Un driver minifilter chiama FltReleaseContext per rilasciare un contesto. FltReleaseContext decrementa il conteggio dei riferimenti nel contesto specificato. Quando il conteggio dei riferimenti raggiunge zero, il contesto viene liberato immediatamente se il chiamante è in esecuzione in IRQL <= APC_LEVEL. Se il chiamante è in esecuzione in IRQL DISPATCH_LEVEL, viene pianificato un elemento di lavoro per liberare il contesto.
Nota
Dopo la restituzione di FltReleaseContext , il chiamante non deve usare il contesto, perché il contesto potrebbe essere già stato liberato.
Ogni chiamata riuscita a FltAllocateContext, FltGetXxxContext o FltReferenceContext deve essere trovata alla fine da una chiamata a FltReleaseContext.
Si noti che il puntatore OldContext restituito da FltSetXxxContext e il parametro Context usato per chiamare FltDeleteContext devono anche essere rilasciati chiamando FltReleaseContext quando non sono più necessari.
Per allocare un nuovo contesto, chiamare FltAllocateContext.
Per incrementare il conteggio dei riferimenti in un contesto, chiamare FltReferenceContext.
Per altre informazioni sul conteggio dei riferimenti al contesto, vedere Riferimenti ai contesti.
I chiamanti di FltReleaseContext devono essere in esecuzione in IRQL <= DISPATCH_LEVEL se il contesto è stato allocato da un pool non di paging. Se il contesto è stato allocato dal pool di paging, i chiamanti devono essere in esecuzione in IRQL <= APC_LEVEL.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include Fltkernel.h) |
Libreria | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | Vedere la sezione Osservazioni. |