Функция FsRtlGetNextFileLock (ntifs.h)
Подпрограмма FsRtlGetNextFileLock используется для перечисления блокировок диапазона байтов, которые в настоящее время существуют для указанного файла.
Синтаксис
PFILE_LOCK_INFO FsRtlGetNextFileLock(
[in] PFILE_LOCK FileLock,
[in] BOOLEAN Restart
);
Параметры
[in] FileLock
Указатель на структуру FILE_LOCK файла. Эта структура должна быть инициализирована предыдущим вызовом FsRtlAllocateFileLock или FsRtlInitializeFileLock.
[in] Restart
Задайте значение TRUE, если перечисление начинается в начале списка блокировок диапазона байтов. Установите значение FALSE при возобновлении перечисления из предыдущего вызова.
Чтобы перечислить все блокировки диапазона байтов для данного файла, используйте FsRtlGetNextFileLock следующим образом:
for (p = FsRtlGetNextFileLock( FileLock, TRUE );
p != NULL;
p = FsRtlGetNextFileLock( FileLock, FALSE )) {
// Process the lock information pointed to by p
}
Возвращаемое значение
FsRtlGetNextFileLock возвращает указатель на структуру FILE_LOCK_INFO для следующей блокировки диапазона байтов, если она существует. Если для этого файла нет блокировки диапазона байтов, FsRtlGetNextFileLock возвращает NULL.
Замечания
Блокировки диапазона байтов не перечисляются в определенном порядке.
Обратите внимание, что поскольку текущее состояние перечисления хранится в структуре FILE_LOCK, вызывающие лица должны быть осторожны для синхронизации вызовов с FsRtlGetNextFileLock, и чтобы избежать изменения любой из возвращаемых структур. Если несколько потоков пытаются использовать FsRtlGetNextFileLock одновременно, результаты будут непредсказуемыми, а перечисление не будет надежно завершено.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Ntifs.h) |
библиотеки |
NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |
правил соответствия DDI |
HwStorPortProhibitedDIs(storport) |