FSCTL_REQUEST_FILTER_OPLOCK codice di controllo
Il codice di controllo FSCTL_REQUEST_FILTER_OPLOCK richiede un blocco opportunistico di filtro (oplock) in un file.
Per elaborare questo codice di controllo, un minifilter chiama FltOplockFsctrl con i parametri seguenti. Un file system o un driver di filtro legacy chiama FsRtlOplockFsctrl.
Per altre informazioni sul blocco opportunistico e sul codice di controllo FSCTL_REQUEST_FILTER_OPLOCK, vedere la documentazione di Microsoft Windows SDK.
Parametri
Oplock: puntatore a oggetti oplock opaco per il file.
CallbackData: solo FltOplockFsctrl . Struttura dei dati di callback (FLT_CALLBACK_DATA) per una richiesta IRP_MJ_FILE_SYSTEM_CONTROL FSCTL. Il parametro FsControlCode per l'operazione deve essere FSCTL_REQUEST_FILTER_OPLOCK.
Irp: solo FsRtlOplockFsctrl . IRP per una richiesta IRP_MJ_FILE_SYSTEM_CONTROL FSCTL. Il parametro FsControlCode per l'operazione deve essere FSCTL_REQUEST_FILTER_OPLOCK.
OpenCount: numero di handle utente per il file.
Blocco dello stato
FltOplockFsctrl restituisce FLT_PREOP_PENDING per questa operazione se è stato concesso l'oplock. In caso contrario, restituisce FLT_PREOP_COMPLETE.
FsRtlOplockFsctrl restituisce uno dei valori NTSTATUS seguenti per questa operazione:
Codice | Significato |
---|---|
STATUS_PENDING | Il blocco è stato concesso. Si tratta di un codice riuscito. |
STATUS_CANCELLED | L'IRP è stato annullato prima del completamento dell'operazione di FSCTL_REQUEST_BATCH_OPLOCK. Si tratta di un codice di errore. |
STATUS_OPLOCK_NOT_GRANTED | Impossibile concedere il blocco. Si tratta di un codice di errore. |
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Ntifs.h (include Ntifs.h o Fltkernel.h) |
Vedi anche
FLT_PARAMETERS per IRP_MJ_FILE_SYSTEM_CONTROL
FSCTL_OPBATCH_ACK_CLOSE_PENDING