Funzione FltDeleteTransactionContext (fltkernel.h)
La routine FltDeleteTransactionContext rimuove un contesto da una determinata transazione e contrassegna il contesto per l'eliminazione.
Sintassi
NTSTATUS FLTAPI FltDeleteTransactionContext(
[in] PFLT_INSTANCE Instance,
[in] PKTRANSACTION Transaction,
[out, optional] PFLT_CONTEXT *OldContext
);
Parametri
[in] Instance
Puntatore dell'istanza opaca per il chiamante.
[in] Transaction
Puntatore di transazione opaco per la transazione il cui contesto viene eliminato.
[out, optional] OldContext
Puntatore a una variabile allocata dal chiamante che riceve l'indirizzo del contesto eliminato. Questo parametro è facoltativo e può essere NULL. Se OldContext non è NULL e non punta a NULL_CONTEXT, il chiamante è responsabile della chiamata a FltReleaseContext per rilasciare questo contesto quando non è più necessario.
Valore restituito
FltDeleteTransactionContext restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio:
Codice restituito | Descrizione |
---|---|
STATUS_FLT_DELETING_OBJECT | L'istanza specificata viene distrutta. Si tratta di un codice di errore. |
STATUS_NOT_FOUND | Non è stato trovato alcun contesto corrispondente. Si tratta di un codice di errore. |
Commenti
Per altre informazioni sui contesti, vedere Informazioni sui contesti minifilter.
Poiché i contesti vengono conteggiati dai riferimenti, non è in genere necessario per un driver minifilter chiamare una routine come FltDeleteTransactionContext per eliminare in modo esplicito un contesto.
Un driver minifilter chiama FltDeleteTransactionContext per rimuovere un contesto da una transazione e contrassegnare il contesto per l'eliminazione. Il contesto viene in genere liberato immediatamente, a meno che non vi sia un riferimento in sospeso ( ad esempio, perché il contesto è ancora in uso da un altro thread).
Per allocare un nuovo contesto, chiamare FltAllocateContext.
Per recuperare un contesto di transazione, chiamare FltGetTransactionContext.
Per impostare un contesto di transazione, chiamare FltSetTransactionContext.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista e versioni successive |
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include Fltkernel.h) |
Libreria | FltMgr.lib |
IRQL | <= APC_LEVEL |