FsRtlGetNextFileLock-Funktion (ntifs.h)
Die FsRtlGetNextFileLock Routine wird zum Aufzählen der Bytebereichssperren verwendet, die derzeit für eine angegebene Datei vorhanden sind.
Syntax
PFILE_LOCK_INFO FsRtlGetNextFileLock(
[in] PFILE_LOCK FileLock,
[in] BOOLEAN Restart
);
Parameter
[in] FileLock
Zeigen Sie auf die FILE_LOCK Struktur für die Datei. Diese Struktur muss durch einen vorherigen Aufruf von FsRtlAllocateFileLock oder FsRtlInitializeFileLockinitialisiert worden sein.
[in] Restart
Wird auf TRUE- festgelegt, wenn die Enumeration am Anfang der Liste der Bytebereichssperren beginnen soll. Wird auf FALSE- festgelegt, wenn die Enumeration aus einem vorherigen Aufruf fortgesetzt wird.
Wenn Sie alle Bytebereichssperren für eine bestimmte Datei aufzählen möchten, verwenden Sie FsRtlGetNextFileLock wie folgt:
for (p = FsRtlGetNextFileLock( FileLock, TRUE );
p != NULL;
p = FsRtlGetNextFileLock( FileLock, FALSE )) {
// Process the lock information pointed to by p
}
Rückgabewert
FsRtlGetNextFileLock gibt einen Zeiger auf die FILE_LOCK_INFO Struktur für die nächste Bytebereichssperre zurück, sofern vorhanden. Wenn für diese Datei keine Bytebereichssperren mehr vorhanden sind, gibt FsRtlGetNextFileLockNULL-zurück.
Bemerkungen
Die Bytebereichssperren werden nicht in einer bestimmten Reihenfolge aufgezählt.
Da der aktuelle Enumerationsstatus in der FILE_LOCK-Struktur gespeichert ist, müssen Aufrufer vorsichtig sein, um Aufrufe mit FsRtlGetNextFileLockzu synchronisieren, und um zu vermeiden, dass sie die zurückgegebenen Strukturen ändern. Wenn mehrere Threads versuchen, FsRtlGetNextFileLock gleichzeitig zu verwenden, sind die Ergebnisse unvorhersehbar, und die Enumeration wird nicht zuverlässig abgeschlossen.
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) |