code de contrôle FSCTL_REQUEST_OPLOCK_LEVEL_1
Le code de contrôle FSCTL_REQUEST_OPLOCK_LEVEL_1 demande un verrou opportuniste de niveau 1 (oplock) sur un fichier.
Pour traiter ce code de contrôle, un minifiltre appelle FltOplockFsctrl avec les paramètres suivants. Un système de fichiers ou un pilote de filtre hérité appelle FsRtlOplockFsctrl.
Pour plus d’informations sur le verrouillage opportuniste et sur le code de contrôle FSCTL_REQUEST_OPLOCK_LEVEL_1, consultez la documentation Microsoft Windows SDK.
Paramètres
Oplock : pointeur d’objet oplock opaque pour le fichier.
CallbackData : FltOplockFsctrl uniquement. Structure de données de rappel (FLT_CALLBACK_DATA) pour une demande FSCTL IRP_MJ_FILE_SYSTEM_CONTROL. Le paramètre FsControlCode de l’opération doit être FSCTL_REQUEST_OPLOCK_LEVEL_1.
Irp : FsRtlOplockFsctrl uniquement. IRP pour une demande FSCTL IRP_MJ_FILE_SYSTEM_CONTROL. Le paramètre FsControlCode de l’opération doit être FSCTL_REQUEST_OPLOCK_LEVEL_1.
OpenCount : nombre de handles utilisateur pour le fichier.
Bloc d’état
FltOplockFsctrl retourne FLT_PREOP_PENDING pour cette opération si l’oplock a été accordé. Sinon, il retourne FLT_PREOP_COMPLETE.
FsRtlOplockFsctrl retourne l’une des valeurs NTSTATUS suivantes pour cette opération :
Code | Signification |
---|---|
STATUS_PENDING | L’oplock a été accordé. Il s’agit d’un code de réussite. |
STATUS_CANCELLED | L’IRP a été annulé avant la fin de l’opération de FSCTL_REQUEST_OPLOCK_LEVEL_1. Il s’agit d’un code d’erreur. |
STATUS_OPLOCK_NOT_GRANTED | L’oplock n’a pas pu être accordé. Il s’agit d’un code d’erreur. |
Configuration requise
Type d’exigence | Condition requise |
---|---|
En-tête | Ntifs.h (inclure Ntifs.h ou Fltkernel.h) |
Voir aussi
FLT_PARAMETERS pour IRP_MJ_FILE_SYSTEM_CONTROL
FSCTL_OPBATCH_ACK_CLOSE_PENDING