Funzione FltDeleteVolumeContext (fltkernel.h)
FltDeleteVolumeContext rimuove un contesto impostato da un determinato driver minifilter per un determinato volume e contrassegna il contesto per l'eliminazione.
Sintassi
NTSTATUS FLTAPI FltDeleteVolumeContext(
[in] PFLT_FILTER Filter,
[in] PFLT_VOLUME Volume,
[out, optional] PFLT_CONTEXT *OldContext
);
Parametri
[in] Filter
Puntatore di filtro opaco per il chiamante.
[in] Volume
Puntatore al volume opaco per il volume.
[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
FltDeleteVolumeContext restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
STATUS_FLT_DELETING_OBJECT | Il volume specificato viene eliminato. 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 sono conteggiati dai riferimenti, non è in genere necessario per un driver minifilter chiamare una routine come FltDeleteVolumeContext per eliminare in modo esplicito un contesto.
Un driver minifilter chiama FltDeleteVolumeContext per rimuovere un contesto da un volume 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 ottenere un contesto di volume, chiamare FltGetVolumeContext.
Per impostare un contesto di volume, chiamare FltSetVolumeContext.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | fltkernel.h (include Fltkernel.h) |
Libreria | FltMgr.lib |
IRQL | <= APC_LEVEL |