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