FLT_PARAMETERS per l'unione IRP_MJ_CREATE
Il componente di unione seguente viene utilizzato quando il campo MajorFunction della struttura FLT_IO_PARAMETER_BLOCK per l'operazione viene IRP_MJ_CREATE.
Sintassi
typedef union _FLT_PARAMETERS {
... ;
struct {
PIO_SECURITY_CONTEXT SecurityContext;
ULONG Options;
USHORT POINTER_ALIGNMENT FileAttributes;
USHORT ShareAccess;
USHORT POINTER_ALIGNMENT EaLength;
PVOID EaBuffer;
LARGE_INTEGER AllocationSize;
} Create;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Members
La struttura Create di FLT_PARAMETERS contiene i membri seguenti.
SecurityContext: puntatore a una struttura IO_SECURITY_CONTEXT che rappresenta il contesto di sicurezza di una richiesta di IRP_MJ_CREATE, dove:
Securitycontext->AccessState è un puntatore a una struttura ACCESS_STATE che contiene il contesto del soggetto dell'oggetto, i tipi di accesso concessi e i tipi di accesso rimanenti desiderati.
Securitycontext->DesiredAccess è una struttura ACCESS_MASK che specifica i diritti di accesso richiesti per il file. Per altre informazioni, vedere il parametro DesiredAccess in FltCreateFile.
Opzioni: maschera di bit di flag che specificano le opzioni da applicare durante la creazione o l'apertura del file, nonché l'azione da eseguire se il file esiste già. I 24 bit bassi di questo membro corrispondono al parametro CreateOptions a FltCreateFile. I 8 bit alti corrispondono al parametro CreateDisposition a FltCreateFile.
FileAttributes: maschera di bit degli attributi da applicare durante la creazione o l'apertura del file. Per altre informazioni, vedere il parametro FileAttributes in FltCreateFile.
ShareAccess: maschera di bit dei diritti di accesso di condivisione richiesti per il file. Se questo parametro è zero, viene richiesto l'accesso esclusivo. Per altre informazioni, vedere il parametro ShareAccess in FltCreateFile.
EaLength: lunghezza, in byte, del buffer a cui punta il membro EaBuffer . Per altre informazioni, vedere il parametro EaLength in FltCreateFile.
EaBuffer: puntatore a un chiamante fornito, FILE_FULL_EA_INFORMATION buffer strutturato che contiene informazioni sull'attributo esteso (EA) da applicare al file. Per altre informazioni, vedere il parametro EaBuffer in FltCreateFile.
AllocationSize: specifica facoltativamente le dimensioni di allocazione iniziali, in byte, per il file. Un valore diverso da zero non ha alcun effetto a meno che il file non venga creato, sovrascritto o sostituito. Per altre informazioni, vedere il parametro AllocationSize in FltCreateFile.
Commenti
La struttura FLT_PARAMETERS per l'operazione IRP_MJ_CREATE contiene i parametri per un'operazione di creazione basata su IRP rappresentata da una struttura di dati di callback (FLT_CALLBACK_DATA). È contenuto in una struttura FLT_IO_PARAMETER_BLOCK .
IRP_MJ_CREATE è un'operazione basata su IRP.
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Fltkernel.h (include Fltkernel.h) |