struttura FLT_RELATED_OBJECTS (fltkernel.h)
La struttura FLT_RELATED_OBJECTS contiene puntatori opachi per gli oggetti associati a un'operazione.
Sintassi
typedef struct _FLT_RELATED_OBJECTS {
USHORT Size;
USHORT TransactionContext;
PFLT_FILTER Filter;
PFLT_VOLUME Volume;
PFLT_INSTANCE Instance;
PFILE_OBJECT FileObject;
PKTRANSACTION Transaction;
} FLT_RELATED_OBJECTS, *PFLT_RELATED_OBJECTS;
Membri
Size
Dimensioni, in byte, della struttura FLT_RELATED_OBJECTS.
TransactionContext
Membro opaco che contiene il valore ID miniversione della transazione se il membro transaction non è NULL. Se Transaction è NULL, il valore di TransactionContext non è definito.
Filter
Puntatore di filtro opaco per il driver minifiltro la cui routine di callback viene chiamata per l'operazione. Questo puntatore identifica in modo univoco il driver minifiltro e rimane costante finché il driver minifiltro viene caricato.
Volume
Puntatore al volume opaco per il volume associato all'operazione. Questo puntatore identifica in modo univoco il volume e rimane costante per tutta la durata dello stack di dispositivi del volume.
Instance
Puntatore a istanze opache per l'istanza del driver minifilter associata all'operazione. Questo puntatore identifica in modo univoco l'istanza e rimane costante finché l'istanza è collegata a un volume.
FileObject
Puntatore all'oggetto file, se presente, per l'operazione.
Transaction
In Windows Vista e versioni successive, questo membro è un puntatore di transazione opaco alla transazione associata all'operazione. L'operazione farà parte di una transazione se il valore di questo membro non è NULL. Se il valore di questo membro è NULL, l'operazione non farà parte di una transazione. Nei sistemi operativi Windows prima di Windows Vista, il valore di questo membro sarà sempre NULL.
Osservazioni
La struttura FLT_RELATED_OBJECTS viene allocata dal gestore filtri e contiene puntatori opachi per gli oggetti associati a un'operazione di I/O o a un'operazione di installazione o di disinstallazione di un'istanza.
Il contenuto della struttura FLT_RELATED_OBJECTS viene impostato dal gestore filtri. I driver minifilter non possono modificare direttamente il contenuto di questa struttura. Tuttavia, se un driver minifilter modifica l'istanza di destinazione o l'oggetto file di destinazione per un'operazione di I/O nella struttura di FLT_IO_PARAMETER_BLOCK per l'operazione, la gestione filtri modifica il valore del corrispondente Istanza o membro FileObject della struttura FLT_RELATED_OBJECTS che viene passata a driver minifiltri inferiori. Per altre informazioni, vedere modifica dei parametri per un'operazione di I/O.
Un driver minifilter riceve un puntatore a una struttura FLT_RELATED_OBJECTS come FltObjects parametro di input ai tipi di routine di callback seguenti:
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK
PFLT_INSTANCE_TEARDOWN_CALLBACK
Per recuperare i puntatori ai contesti di un driver minifiltro per gli oggetti in una struttura FLT_RELATED_OBJECTS, chiamare FltGetContexts.
typedef CONST struct _FLT_RELATED_OBJECTS *PCFLT_RELATED_OBJECTS;
Fabbisogno
Requisito | Valore |
---|---|
intestazione | fltkernel.h (include Fltkernel.h) |
Vedere anche
FltDoCompletionProcessingWhenSafe
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK