FLT_PARAMETERS per l'unione IRP_MJ_QUERY_OPEN
Il componente unione seguente viene utilizzato quando il campo MajorFunction della struttura FLT_IO_PARAMETER_BLOCK per l'operazione viene IRP_MJ_QUERY_OPEN.
Sintassi
typedef union _FLT_PARAMETERS {
... ;
struct {
PIRP Irp;
PVOID FileInformation;
PULONG Length;
FILE_INFORMATION_CLASS FileInformationClass;
} QueryOpen;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Membri
Irp: puntatore all'IRP associato a questa operazione.
FileInformation: puntatore a un buffer allocato dal chiamante in cui la routine scrive le informazioni richieste sull'oggetto file. Il membro FileInformationClass specifica il tipo di informazioni richieste dal chiamante.
Lunghezza: puntatore alle dimensioni, in byte, del buffer a cui punta FileInformation.
FileInformationClass: specifica il tipo di informazioni da restituire sul file, nel buffer a cui punta FileInformation . I driver intermedi e del dispositivo possono specificare uno dei valori di FILE_INFORMATION_CLASS seguenti. Altri valori causano l'esito negativo della chiamata e non devono essere passati alle chiamate PreQueryOpen/PostQueryOpen.
valore FILE_INFORMATION_CLASS Tipo di informazioni restituite FileStatInformation Struttura FILE_STAT_INFORMATION . Questa struttura contiene una maschera di accesso. Per altre informazioni sulle maschere di accesso, vedere ACCESS_MASK. FileStatLxInformation Struttura FILE_STAT_LX_INFORMATION . Questa struttura contiene una maschera di accesso. Per altre informazioni sulle maschere di accesso, vedere ACCESS_MASK. FileCaseSensitiveInformation Struttura FILE_CA edizione Standard_edizione Standard NSITIVE_INFORMATION. FileStatBasicInformation Struttura FILE_STAT_BASIC_INFORMATION .
Osservazioni:
La struttura FLT_PARAMETERS per le operazioni di IRP_MJ_QUERY_OPEN contiene i parametri per un'operazione QueryOpen rappresentata da una struttura di dati di callback (FLT_CALLBACK_DATA). È contenuto in una struttura FLT_IO_PARAMETER_BLOCK.
IRP_MJ_QUERY_OPEN è un'operazione di callback del file system (FSFilter). Un filtro può rifiutare l'operazione sia nel callback preoperazionale che nel callback post-operazione usando rispettivamente FLT_PREOP_DISALLOW_FSFILTER_IO e FLT_POSTOP_DISALLOW_FSFILTER_IO.
Il file system non compila il campo Informazioni nel blocco IO_STATUS. I filtri non devono esaminare questo valore nelle relative chiamate successive.
Per altre informazioni sulle operazioni di callback FSFilter, vedere la voce di riferimento per FsRtlRegisterFileSystemFilterCallbacks.
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Fltkernel.h (include Fltkernel.h) |