请参阅以下代码。为什么IsWindowVisible使EnumDesktopWindows的回调只运行一次?
MyEnumProc只运行一次以下代码。但是如果我将IsWindowVisible(wnd)注释掉了,它会运行很多次。
为什么IsWindowVisible会发生这种情况(只运行一次)?我认为IsWindowVisible只是一个函数来检查wnd的属性? test.c的的
代码:
#include <windows.h>
#include <stdio.h>
BOOL CALLBACK MyEnumProc(HWND wnd, LPARAM lParam)
{
printf("run\n");
IsWindowVisible(wnd);
}
int main(void)
{
EnumDesktopWindows(NULL, MyEnumProc, 0);
printf("end\n");
return 0;
}
我的环境是:
的Windows XP SP3。
GCC 3.4.6(MinGW的)
编译选项:gcc的-o test.exe的test.c的
我做了编译并运行CMD.EXE的TEST.EXE。
我知道你是新来的,但请记住接受你的答案! – 2011-03-09 20:35:13