См. Следующий код.
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
Я выполнил компиляцию и запустил test.exe в cmd.exe.