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

指向要枚举的 FCB 上SRV_OPEN结构的指针。

[in, out] ContinuationHandle

指向来回传递的句柄的指针,表示枚举的状态。 如果此参数为 NULL 指针,则这是锁枚举的开始。

[out] FileOffset

指向返回的锁的文件偏移量的指针。

[out] LockRange

指向返回的锁的锁范围的指针。

[out] IsLockExclusive

指向 BOOLEAN 的指针,指示返回的锁是否为排他锁。

返回值

成功时,RxLockEnumerator 返回 TRUE ,指示返回的锁数据有效。 当找不到锁数据或已到达锁列表的末尾时, RxLockEnumerator 例程在失败时返回或 FALSE

注解

RxLockEnumerator 通常从网络最小重定向程序调用,以枚举 FCB 上的文件锁。 RxLockEnumerator 在每次调用时获取一个锁。 因此调用方需要在内部保留枚举状态。 因此,在任何时候只能进行一个枚举过程。

RxLockEnumerator 例程需要分配非分页池内存才能枚举锁。 因此,如果内存分配失败, RxLockEnumerator 可能会失败。

要求

要求
目标平台 桌面
标头 rxprocs.h (包括 Rxprocs.h、Mrxfcb.h、Fcb.h)
IRQL <= APC_LEVEL

另请参阅

FCB 结构

SRV_OPEN结构