Freigeben über


NtUnlockFile-Funktion (ntifs.h)

Die NtUnlockFile Routine entsperrt eine Bytebereichssperre in einer Datei.

Syntax

__kernel_entry NTSYSCALLAPI NTSTATUS NtUnlockFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PLARGE_INTEGER   ByteOffset,
  [in]  PLARGE_INTEGER   Length,
  [in]  ULONG            Key
);

Parameter

[in] FileHandle

Ein Handle für das Dateiobjekt, das die Datei darstellt, deren Bytebereich entsperrt werden soll.

[out] IoStatusBlock

Ein Zeiger auf eine IO_STATUS_BLOCK Struktur, die den endgültigen Status enthält.

[in] ByteOffset

Ein Zeiger auf eine Variable, der den Anfangsbyte-Offset für den bytebereich angibt, der entsperrt werden soll.

[in] Length

Ein Zeiger auf eine Variable, die die Länge des zu entsperrende Bytebereichs in Bytes angibt.

[in] Key

Der vom Aufrufer zugewiesene Wert, der verwendet wird, um Gruppen verwandter Sperren zu beschreiben. Dieser Wert sollte auf Null festgelegt werden.

Rückgabewert

Die NtUnlockFile- Routine gibt STATUS_SUCCESS für erfolg oder einen geeigneten NTSTATUS-Wert zurück. Mögliche NTSTATUS-Werte sind:

Rückgabecode Beschreibung
STATUS_RANGE_NOT_LOCKED Der angegebene Bytebereich ist nicht gesperrt.

Bemerkungen

Die NtUnlockFile- Routine akzeptiert einen Bytebereich, wie durch die argumente ByteOffset und Length angegeben. Dieser Bereich muss mit einem Bytebereich in der Datei identisch sein, der zuvor mit einem einzelnen Aufruf der NtUnlockFile Routine gesperrt wurde. Es ist nicht möglich, zwei zuvor gesperrte angrenzende Bereiche mit einem einzigen Aufruf von NtUnlockFile-zu entsperren. Es ist auch nicht möglich, einen Teil eines Bereichs zu entsperren, der zuvor mit einem einzelnen Aufruf der NtUnlockFile Routine gesperrt wurde.

Aufrufer von NtUnlockFile- müssen unter IRQL = PASSIVE_LEVEL und mit speziellen Kernel-APCs ausgeführt werden, die**aktiviert sind.

Anmerkung

Wenn der Aufruf der NtUnlockFile--Funktion im Kernelmodus auftritt, sollten Sie den Namen "ZwUnlockFile" anstelle von "NtUnlockFile" verwenden.

Bei Aufrufen von Kernelmodustreibern können sich die NtXxx und ZwXxx- Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 7
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h, FltKernel.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL (siehe Abschnitt "Hinweise")
DDI-Complianceregeln HwStorPortProhibitedDIs, PowerIrpDDis

Siehe auch

Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen

NtLockFile-