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,则包含事务微型转换 ID 值的不透明成员。 如果 事务NULL,则未定义 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