#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#undef WIN32_LEAN_AND_MEAN

#include <wingdi.h>
#include <stddef.h>
#include <stdio.h>

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
 BOOL bRet = SendMessageTimeout(hwnd, WM_GETTEXT, 0, 0,
				SMTO_ABORTIFHUNG, 1000/*ms*/, NULL);
 if(bRet == 0)
   {
     fprintf(stderr,"FAILURE!");
     exit(EXIT_FAILURE);
   }
 return TRUE;
}

int main(int argc, char **argv)
{
 BOOL bRet = EnumWindows(EnumWindowsProc, 0);
 if(bRet == 0)
   {
     fprintf(stderr,"ERROR!");
     exit(EXIT_FAILURE);
   }
 fprintf(stderr,"SUCCESS!");
 exit(EXIT_SUCCESS);
}
