FLT_RELATED_OBJECTS結構 (fltkernel.h)
FLT_RELATED_OBJECTS 結構包含與作業相關聯之物件的不透明指標。
語法
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;
成員
Size
大小,以位元組為單位,表示FLT_RELATED_OBJECTS結構。
TransactionContext
如果 交易 成員未 NULL,則包含交易迷你版本標識碼值的不透明成員。 如果 TransactionNULL,則未定義 transactionContext 的值。
Filter
小型篩選驅動程式的不透明篩選指標,其回呼例程正在針對作業呼叫。 此指標會唯一識別迷你篩選驅動程式,只要載入迷你篩選驅動程式,就會維持不變。
Volume
與作業相關聯的磁碟區不透明磁碟區指標。 此指標會唯一識別磁碟區,並在磁碟區裝置堆疊的存留期內維持不變。
Instance
與作業相關聯的迷你篩選驅動程序實例不透明實例指標。 只要實例附加至磁碟區,這個指標會唯一識別實例,而且會保持常數。
FileObject
作業的檔案物件的指標,如果有的話。
Transaction
在 Windows Vista 和更新版本上,此成員是與作業相關聯之交易的不透明交易指標。 如果這個成員的值不是 NULL,則此作業將會是交易的一部分。 如果這個成員的值 NULL,則作業不會是交易的一部分。 在 Windows Vista 之前的 Windows作系統上,此成員的值一律會 NULL。
言論
FLT_RELATED_OBJECTS 結構是由篩選管理員所配置,並且包含與 I/O 作業或實例設定或卸除作業相關聯之物件的不透明指標。
篩選管理員會設定FLT_RELATED_OBJECTS結構的內容。 迷你篩選驅動程式無法直接修改此結構的內容。 不過,如果迷你篩選驅動程式在作業的 FLT_IO_PARAMETER_BLOCK 結構中修改 I/O 作業的目標實例或目標檔案對象,篩選管理員會修改對應 實例的值 或 FileObject 傳遞至較低迷你篩選器驅動程式之FLT_RELATED_OBJECTS結構的成員。 如需詳細資訊,請參閱 修改 I/O 作業的參數。
迷你篩選驅動程式會接收FLT_RELATED_OBJECTS結構的指標,因為 FltObjects 下列回呼例程類型的輸入參數:
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK
PFLT_INSTANCE_TEARDOWN_CALLBACK
若要擷取FLT_RELATED_OBJECTS結構中物件之迷你篩選驅動程式內容的指標,請呼叫 FltGetContexts。
typedef CONST struct _FLT_RELATED_OBJECTS *PCFLT_RELATED_OBJECTS;
要求
要求 | 價值 |
---|---|
標頭 | fltkernel.h (包括 Fltkernel.h) |
另請參閱
FltDoCompletionProcessingWhenSafe
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK