FsRtlInitializeFileLock-Funktion (ntifs.h)
Die FsRtlInitializeFileLock Routine initialisiert eine FILE_LOCK Struktur.
Syntax
void FsRtlInitializeFileLock(
[in] PFILE_LOCK FileLock,
[in, optional] PCOMPLETE_LOCK_IRP_ROUTINE CompleteLockIrpRoutine,
[in, optional] PUNLOCK_ROUTINE UnlockRoutine
);
Parameter
[in] FileLock
Zeiger auf eine nicht initialisierte FILE_LOCK Struktur.
[in, optional] CompleteLockIrpRoutine
Zeigen Sie auf eine PCOMPLETE_LOCK_IRP_ROUTINE-typierte Rückrufroutine, die aufgerufen werden soll, wenn eine IRP_MJ_LOCK_CONTROL Anforderung abgeschlossen ist. Dieser Parameter ist optional und kann NULL sein.
[in, optional] UnlockRoutine
Zeiger auf eine PUNLOCK_ROUTINE-typierte Rückrufroutine, die aufgerufen werden soll, wenn der Bytebereich entsperrt wird. Dieser Parameter ist optional und kann NULL sein.
Rückgabewert
Nichts
Bemerkungen
FsRtlInitializeFileLock initialisiert eine nicht initialisierte FILE_LOCK Struktur.
Es ist ein Programmierfehler, FsRtlInitializeFileLock für eine FILE_LOCK Struktur aufzurufen, die bereits von FsRtlInitializeFileLock oder FltAllocateFileLockinitialisiert wurde, es sei denn, die Struktur wurde durch einen nachfolgenden Aufruf von FsRtlUninitializeFileLocknicht initialisiert.
Nach der Initialisierung kann die FILE_LOCK-Struktur verwendet werden, um einen Bytebereich in einer Datei zu sperren, indem FsRtlProcessFileLock oderFsRtlFastLockaufgerufen wird. FsRtlProcessFileLock Sperr-IRPs verarbeitet. FsRtlFastLock führt nicht-IRP-Sperren durch.
Wenn die FILE_LOCK Struktur nicht mehr benötigt wird, kann sie durch Aufrufen FsRtlUninitializeFileLocknicht initialisiert werden. Die nicht initialisierte FILE_LOCK-Struktur kann dann für die Wiederverwendung initialisiert werden, indem FsRtlInitializeFileLockaufgerufen wird.
Minifilter müssen FltInitializeFileLock anstelle von FsRtlInitializeFileLockaufrufen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | <= APC_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport) |