RtlFindFirstRunClear 函数 (wdm.h)

RtlFindFirstRunClear 例程搜索给定位图中明文位的初始连续范围。

语法

NTSYSAPI ULONG RtlFindFirstRunClear(
  [in]  PRTL_BITMAP BitMapHeader,
  [out] PULONG      StartingIndex
);

参数

[in] BitMapHeader

指向描述位图 的RTL_BITMAP 结构的指针。 此结构必须已由 RtlInitializeBitMap 例程初始化。

[out] StartingIndex

指向变量的指针,该变量在位图中返回初始清除运行的起始索引。 这是一个从零开始的值,指示返回范围中第一个清除位的位位置。 如果 RtlFindFirstRunClear 找不到明文位的运行,则其值毫无意义。

返回值

RtlFindFirstRunClear 返回从 StartingIndex 开始的运行中的位数;如果无法在位图中找到清除位的运行,则返回零。

注解

返回的运行可以有一个清除位。 也就是说,找到明文位后, RtlFindFirstRunClear 会继续搜索,直到找到下一个设置位,然后返回运行中找到的清除位数。

如果包含位图变量的内存可分页或 BitMapHeader 处的内存可分页,则 RtlFindFirstRunClear 的调用方必须在 IRQL <= APC_LEVEL 运行。 否则,可以在任何 IRQL 中调用 RtlFindFirstRunClear

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL (请参阅备注部分)

另请参阅

RTL_BITMAP

RtlAreBitsClear

RtlFindClearBits

RtlFindClearRuns

RtlFindFirstRunClear

RtlFindLastBackwardRunClear

RtlFindLongestRunClear

RtlFindNextForwardRunClear

RtlInitializeBitMap

RtlNumberOfClearBits

RtlSetBits