Partager via


code de contrôle FSCTL_REQUEST_OPLOCK_LEVEL_2

Le code de contrôle FSCTL_REQUEST_OPLOCK_LEVEL_2 demande un verrou opportuniste de niveau 2 (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_2, 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_2.

  • 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_2.

  • OpenCount : spécifie l’état de verrouillage du fichier. Définissez ce paramètre sur une valeur ULONG différente de zéro s’il existe des verrous de plage d’octets sur le fichier, ou zéro dans le cas contraire.

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_2. 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_CALLBACK_DATA

FLT_PARAMETERS

FLT_PARAMETERS pour IRP_MJ_FILE_SYSTEM_CONTROL

FltOplockFsctrl

FSCTL_OPBATCH_ACK_CLOSE_PENDING

FSCTL_OPLOCK_BREAK_ACK_NO_2

FSCTL_OPLOCK_BREAK_ACKNOWLEDGE

FSCTL_OPLOCK_BREAK_NOTIFY

FSCTL_REQUEST_BATCH_OPLOCK

FSCTL_REQUEST_FILTER_OPLOCK

FSCTL_REQUEST_OPLOCK_LEVEL_1

FsRtlOplockFsctrl

IRP_MJ_FILE_SYSTEM_CONTROL