#include <QCoreApplication>
#include <QDebug>
#include <Windows.h>
#pragma comment (lib, "User32.lib")
char m_Name[MAXBYTE];
char m_Title[MAXBYTE];
WORD m_nNum;
BOOL CALLBACK enumAllWindow(HWND Hwnd, LPARAM IParm)//系统返还给你的窗口句柄,API调用进来的参数
{
//每次Hwnd返回回来,都需要获取他的类名和标题
GetClassNameA(Hwnd,m_Name,MAXBYTE);//获得指定窗口所属的类的类名
GetWindowTextA(Hwnd,m_Title,MAXBYTE);//查找标题
m_nNum++;
QString strName = QString::fromLocal8Bit(m_Name);
QString strTitle = QString::fromLocal8Bit(m_Title);
qDebug()<<"ID:"<<m_nNum<<"窗口句柄:"<<Hwnd<<"窗口类名:"<<strName<<"窗口标题:"<<strTitle;
// return false;//枚举一次就不枚举了
return true;//枚举到完毕
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
m_nNum = 0;
EnumWindows(enumAllWindow,(LPARAM)"");
return a.exec();
}