Функция RxLockEnumerator (rxprocs.h)
RxLockEnumerator вызывается из мини-перенаправления сети для перечисления блокировок файлов в FCB.
Синтаксис
BOOLEAN RxLockEnumerator(
[in, out] IN OUT PMRX_SRV_OPEN SrvOpen,
[in, out] IN OUT PVOID *ContinuationHandle,
[out] OUT PLARGE_INTEGER FileOffset,
[out] OUT PLARGE_INTEGER LockRange,
[out] OUT PBOOLEAN IsLockExclusive
);
Параметры
[in, out] SrvOpen
Указатель на структуру SRV_OPEN для перечисления FCB.
[in, out] ContinuationHandle
Указатель на дескриптор, передаваемый назад и вперед, представляющий состояние перечисления. Если этот параметр является указателем NULL , то это начало перечисления блокировок.
[out] FileOffset
Указатель на смещение файла возвращенной блокировки.
[out] LockRange
Указатель на диапазон блокировки возвращенной блокировки.
[out] IsLockExclusive
Указатель на boOLEAN, указывающий, является ли возвращенная блокировка монопольной.
Возвращаемое значение
RxLockEnumerator возвращает значение TRUE при успешном выполнении, указывающее, что возвращенные данные блокировки действительны. Подпрограмма RxLockEnumerator возвращает или false при сбое при отсутствии данных блокировки или достижении конца списка блокировок.
Примечания
RxLockEnumerator обычно вызывается из сетевого min-redirector для перечисления блокировок файлов в FCB. RxLockEnumerator получает одну блокировку для каждого вызова. поэтому вызывающему объекту необходимо внутренне сохранить состояние перечисления. В результате в любой момент может выполняться только один процесс перечисления.
Подпрограмма RxLockEnumerator должна выделить нестраничную память пула для перечисления блокировок. Следовательно, RxLockEnumerator может завершиться ошибкой, если выделение памяти завершается ошибкой.
Требования
Целевая платформа | Рабочий стол |
Заголовок | rxprocs.h (включая Rxprocs.h, Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |