FSCTL_OPLOCK_BREAK_ACK_NO_2 Steuerungscode
Der FSCTL_OPLOCK_BREAK_ACK_NO_2-Kontrollcode reagiert auf eine Benachrichtigung, dass eine exklusive (Ebene 1, Batch oder Filter) opportunistische Sperre (Oplock) für eine Datei unterbrochen wurde.
Eine Clientanwendung sendet diesen Steuerungscode, um anzugeben, dass sie den Oplock-Umbruch bestätigt und dass, wenn es sich bei dem Oplock um einen Oplock der Ebene 1 handelt, der auf Ebene 2 unterbrochen wurde, die Oplock-Instanz der Ebene 2 nicht gewünscht wird.
Um diesen Steuerelementcode zu verarbeiten, ruft ein Minifilter FltOplockFsctrl mit den folgenden Parametern auf. Ein Dateisystem oder Legacyfiltertreiber ruft FsRtlOplockFsctrl auf.
Weitere Informationen zur opportunistischen Sperre und zum FSCTL_OPLOCK_BREAK_ACK_NO_2-Steuerungscode finden Sie in der Microsoft Windows SDK-Dokumentation.
Parameter
Oplock: Undurchsichtiger Oplock-Objektzeiger für die Datei.
CallbackData: Nur FltOplockFsctrl . Rückrufdatenstruktur (FLT_CALLBACK_DATA) für eine IRP_MJ_FILE_SYSTEM_CONTROL FSCTL-Anforderung. Der FsControlCode-Parameter für den Vorgang muss FSCTL_OPLOCK_BREAK_ACK_NO_2 sein.
Irp: Nur FsRtlOplockFsctrl . IRP für eine IRP_MJ_FILE_SYSTEM_CONTROL FSCTL-Anforderung. Der FsControlCode-Parameter für den Vorgang muss FSCTL_OPLOCK_BREAK_ACK_NO_2 sein.
OpenCount: Wird bei diesem Vorgang nicht verwendet; auf 0 festgelegt.
Statusblock
FltOplockFsctrl gibt für diesen Vorgang immer FLT_PREOP_COMPLETE zurück.
FsRtlOplockFsctrl gibt einen der folgenden NTSTATUS-Werte für diesen Vorgang zurück:
Code | Bedeutung |
---|---|
STATUS_SUCCESS | Der Oplock-Umbruch wird bestätigt. Es werden keine verbleibenden Oplocks gehalten. |
STATUS_INVALID_OPLOCK_PROTOCOL | Dieser Handle hat keinen Oplock gehalten, oder der Oplock-Umbruch wird derzeit nicht ausgeführt. Dies ist ein Fehlercode. |
Anforderungen
Anforderungstyp | Anforderung |
---|---|
Header | Ntifs.h (einschließlich Ntifs.h oder Fltkernel.h) |
Weitere Informationen
FLT_PARAMETERS für IRP_MJ_FILE_SYSTEM_CONTROL
FSCTL_OPBATCH_ACK_CLOSE_PENDING