Unión FLT_PARAMETERS de IRP_MJ_NETWORK_QUERY_OPEN
El siguiente componente de unión se usa cuando el campo MajorFunction de la estructura FLT_IO_PARAMETER_BLOCK de la operación es IRP_MJ_NETWORK_QUERY_OPEN.
Sintaxis
typedef union _FLT_PARAMETERS {
... ;
struct {
PIRP Irp;
PFILE_NETWORK_OPEN_INFORMATION NetworkInformation;
} NetworkQueryOpen;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Miembros
NetworkQueryOpen: estructura que incluye los siguientes miembros.
Irp: puntero a un IRP de creación que representa esta operación abierta. Este IRP lo usará el sistema de archivos para código abierto o de creación común, pero que no se ha completado.
NetworkInformation: puntero a un búfer estructurado FILE_NETWORK_OPEN_INFORMATION para recibir la información solicitada sobre el archivo.
Comentarios
La estructura FLT_PARAMETERS de las operaciones de IRP_MJ_NETWORK_QUERY_OPEN incluye los parámetros de una operación NetworkQueryOpen representada por una estructura (FLT_CALLBACK_DATA). La estructura FLT_PARAMETERS se encuentra en una estructura FLT_IO_PARAMETER_BLOCK.
Nota:
El objeto de archivo asociado a IRP_MJ_NETWORK_QUERY_OPEN es un objeto basado en pilas. Un filtro registrado para la devolución de llamada NetworkQueryOpen no debe hacer referencia a este objeto. Es decir, no llame a ObReferenceObject ni a ObDereferenceObject en este objeto de archivo basado en pilas y no guarde el puntero que enlace al objeto .
IRP_MJ_NETWORK_QUERY_OPEN es una operación de E/S rápida. Es el equivalente de la operación FastIoQueryOpen (no de la operación FastIoQueryNetworkOpenInfo). Un filtro puede rechazar la operación en su devolución de llamada previa a la operación mediante FLT_PREOP_DISALLOW_FASTIO. No puede rechazar la operación en su devolución de llamada posterior a la operación, ya que el sistema de archivos ya ha completado la operación y los datos están presentes.
Requisitos
Tipo de requisito | Requisito |
---|---|
Encabezado | Fltkernel.h (incluya Fltkernel.h) |