FLT_PARAMETERS per l'unione IRP_MJ_LOCK_CONTROL
Il componente di unione seguente viene utilizzato quando il campo MajorFunction della struttura FLT_IO_PARAMETER_BLOCK per l'operazione viene IRP_MJ_LOCK_CONTROL.
Sintassi
typedef union _FLT_PARAMETERS {
... ;
struct {
PLARGE_INTEGER Length;
ULONG POINTER_ALIGNMENT Key;
LARGE_INTEGER ByteOffset;
PEPROCESS ProcessId;
BOOLEAN FailImmediately;
BOOLEAN ExclusiveLock;
} LockControl;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Members
LockControl: struttura contenente i membri seguenti.
Lunghezza: puntatore a una variabile che specifica la lunghezza in byte dell'intervallo da bloccare.
Chiave: valore della chiave da assegnare al blocco dell'intervallo di byte.
ByteOffset: offset di byte iniziale all'interno del file dell'intervallo da bloccare.
ProcessId: puntatore opaco all'oggetto processo per il processo che ha richiesto il blocco dell'intervallo di byte.
FailImmediately: valore booleano che specifica se la richiesta di blocco deve avere esito negativo se il blocco non può essere concesso immediatamente. Questo membro è impostato su FALSE se il thread richiedente può essere inserito in uno stato di attesa fino a quando la richiesta non viene concessa o TRUE se non è possibile.
ExclusiveLock: valore booleano che specifica se è richiesto un blocco esclusivo. Questo membro è impostato su TRUE se viene richiesto un blocco esclusivo o FALSE se viene richiesto un blocco condiviso.
Commenti
Struttura FLT_PARAMETERS per l'operazione IRP_MJ_LOCK_CONTROL rappresentata da una struttura di dati di callback (FLT_CALLBACK_DATA). È contenuto in una struttura FLT_IO_PARAMETER_BLOCK .
IRP_MJ_LOCK_CONTROL può essere un'operazione di I/O basata su IRP o un'operazione di I/O veloce.
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Fltkernel.h (include Fltkernel.h) |