Compartir a través de


estructura FLT_RELATED_OBJECTS (fltkernel.h)

La estructura FLT_RELATED_OBJECTS contiene punteros opacos para los objetos asociados a una operación.

Sintaxis

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;

Miembros

Size

Tamaño, en bytes, de la estructura FLT_RELATED_OBJECTS.

TransactionContext

Miembro opaco que contiene el valor del identificador de miniversion de transacción si el miembro Transaction no es NULL. Si Transaction es NULL, el valor de TransactionContext no está definido.

Filter

Puntero de filtro opaco para el controlador de minifiltro cuya rutina de devolución de llamada se llama para la operación. Este puntero identifica de forma única el controlador de minifiltro y permanece constante siempre y cuando se cargue el controlador de minifiltro.

Volume

Puntero de volumen opaco para el volumen asociado a la operación. Este puntero identifica de forma única el volumen y permanece constante durante la duración de la pila de dispositivos de volumen.

Instance

Puntero de instancia opaco para la instancia del controlador de minifiltro asociada a la operación. Este puntero identifica de forma única la instancia y permanece constante siempre y cuando la instancia esté asociada a un volumen.

FileObject

Puntero al objeto de archivo, si existe, para la operación.

Transaction

En Windows Vista y versiones posteriores, este miembro es un puntero de transacción opaco a la transacción asociada a la operación. La operación formará parte de una transacción si el valor de este miembro no es NULL. Si el valor de este miembro es NULL, la operación no formará parte de una transacción. En los sistemas operativos Windows anteriores a Windows Vista, el valor de este miembro siempre será NULL.

Comentarios

El administrador de filtros asigna la estructura FLT_RELATED_OBJECTS y contiene punteros opacos para los objetos asociados a una operación de E/S o una operación de configuración o desmontaje de instancia.

El administrador de filtros establece el contenido de la estructura de FLT_RELATED_OBJECTS. Los controladores de minifiltro no pueden modificar directamente el contenido de esta estructura. Sin embargo, si un controlador de minifiltro modifica la instancia de destino o el objeto de archivo de destino para una operación de E/S en la estructura de FLT_IO_PARAMETER_BLOCK para la operación, el administrador de filtros modifica el valor del miembro Instance o FileObject correspondiente de la estructura de FLT_RELATED_OBJECTS que se pasa a controladores de minifiltro inferiores. Para obtener más información, consulte Modificación de los parámetros para una operación de E/S.

Un controlador de minifiltro recibe un puntero a una estructura de FLT_RELATED_OBJECTS como parámetro de entrada FltObjects a los siguientes tipos de rutina de devolución de llamada:

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK

PFLT_INSTANCE_SETUP_CALLBACK

PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK

PFLT_INSTANCE_TEARDOWN_CALLBACK

Para recuperar punteros a los contextos de un controlador de minifiltro para los objetos de una estructura de FLT_RELATED_OBJECTS, llame a FltGetContexts.

Notatypedef CONST struct _FLT_RELATED_OBJECTS *PCFLT_RELATED_OBJECTS;
 

Requisitos

Requisito Valor
Header fltkernel.h (incluya Fltkernel.h)

Consulte también

FLT_IO_PARAMETER_BLOCK

FLT_RELATED_CONTEXTS

FltDoCompletionProcessingWhenSafe

FltGetContexts

PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK

PFLT_INSTANCE_SETUP_CALLBACK

PFLT_INSTANCE_TEARDOWN_CALLBACK

PFLT_POST_OPERATION_CALLBACK

PFLT_PRE_OPERATION_CALLBACK