Freigeben über


ZwUnlockFile-Funktion (ntifs.h)

Die ZwUnlockFile Routine entsperrt eine Bytebereichssperre in einer Datei.

Syntax

NTSYSAPI NTSTATUS ZwUnlockFile(
  [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 ZwUnlockFile- Routine gibt STATUS_SUCCESS für Erfolg oder einen entsprechenden NTSTATUS-Wert zurück. Mögliche NTSTATUS-Werte sind:

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

Bemerkungen

Die ZwUnlockFile 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 ZwUnlockFile Routine gesperrt wurde. Es ist nicht möglich, zwei zuvor gesperrte angrenzende Bereiche mit einem einzigen Aufruf von ZwUnlockFilezu entsperren. Es ist auch nicht möglich, einen Teil eines Bereichs zu entsperren, der zuvor mit einem einzelnen Aufruf der ZwUnlockFile Routine gesperrt wurde.

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

Anmerkung

Wenn der Aufruf der ZwUnlockFile--Funktion im Benutzermodus auftritt, sollten Sie den Namen "NtUnlockFile" anstelle von "ZwUnlockFile" 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(storport), PowerIrpDDis(wdm)

Siehe auch

ZwLockFile-