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 die endgültige status enthält.
[in] ByteOffset
Ein Zeiger auf eine Variable, der den Anfangsbyteoffset für den zu entsperrenden Bytebereich angibt.
[in] Length
Ein Zeiger auf eine Variable, die die Länge des zu entsperrenden Bytebereichs in Bytes angibt.
[in] Key
Der vom Aufrufer zugewiesene Wert, der zum Beschreiben von Gruppen verwandter Sperren verwendet wird. Dieser Wert sollte auf 0 (null) festgelegt werden.
Rückgabewert
Die ZwUnlockFile-Routine gibt STATUS_SUCCESS nach 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. |
Hinweise
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 ZwUnlockFile zu 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 aktivierten speziellen Kernel-APCs ausgeführt werden**.
Hinweis
Wenn der Aufruf der ZwUnlockFile-Funktion im Benutzermodus erfolgt, 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 verarbeiten und interpretieren. Weitere Informationen zur Beziehung zwischen den Nt Xxx- und ZwXxx-Versionen einer Routine finden Sie unter Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienstroutinen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7 |
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h, FltKernel.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (siehe Abschnitt "Hinweise") |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm) |