No logro hacer que la funcion GetActiveWindow me devuelva algo distinto de NULL jutno con GetWindow.
Lo estoy haciendo en una aplicacion consola con DevC++, no se si eso tendrá algo que ver.
por sierto, El while nunca se me ejecuta hasta si pongo como condicion que sea Igual en vez de Distinto.
#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;
int main(int argc, char *argv[])
{
HWND hWnd;
LPTSTR lpClassName;
LPTSTR lpWindowText;
hWnd = GetWindow(GetActiveWindow(), GW_HWNDFIRST);
GetClassName(hWnd, lpClassName, sizeof(lpClassName));
hWnd = GetActiveWindow();
while(hWnd!=NULL){
GetClassName(hWnd, lpClassName, sizeof(lpClassName));
GetWindowText(hWnd, lpWindowText, sizeof(lpWindowText));
cout<< hWnd << ": " << lpClassName << " - " << lpWindowText << endl;
hWnd = GetWindow(hWnd, GW_HWNDNEXT);
}
system("PAUSE");
return EXIT_SUCCESS;
}