WNDOBJ_bEnum 函数 (winddi.h)

WNDOBJ_bEnum 函数从窗口的可见区域获取一批矩形。

语法

ENGAPI BOOL WNDOBJ_bEnum(
  WNDOBJ *pwo,
  ULONG  cj,
  ULONG  *pul
);

参数

pwo

指向由调用 EngCreateWnd 创建的 WNDOBJ 结构的指针。

cj

指定 pul 指向的缓冲区的大小(以字节为单位)。 GDI 不会写入超出此限制。

pul

指向要在其中写入以下窗体结构的缓冲区的指针。 在此结构中, c 是返回的矩形计数, arcl 是矩形数组:

typedef struct _ENUMRECTS{
    ULONG c;
    RECTL arcl[]
} ENUMRECTS;

返回值

如果有更多数据要枚举,并且驱动程序应重复调用,则返回值为 TRUE 。 如果枚举完成,则为 FALSE

注解

枚举的顺序由对 WNDOBJ_cEnumStart 的调用决定。

以下可能用于调用此函数的循环结构。

do {
    bMore = WNDOBJ_bEnum(pwo, sizeof(buffer), &buffer.c);
    for (i = 0; i < buffer.c; i++) { 
        //  Process the data
    }
} while (bMore);

只能EngCreateWnd 函数提供给 GDI 的回调函数或给定 WNDOBJ 的图形 DDI 函数调用WNDOBJ_bEnum。

要求

   
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 通用
标头 winddi.h (包括 Winddi.h)
Library Win32k.lib
DLL Win32k.sys

另请参阅

EngCreateWnd

WNDOBJ

WNDOBJ_cEnumStart