python win32 同标题同class窗口怎么区分 200
如题,我本来是通过标题获取窗口的,但是后来发现,通过spy+获取到的窗口标题居然是一样的,然后查看class也是一样的,我用Findwindow只能获取第一个,我想获取所...
如题,我本来是通过标题获取窗口的,但是后来发现,通过spy+获取到的窗口标题居然是一样的,然后查看class也是一样的,我用Findwindow只能获取第一个,我想获取所有的怎么办,怎么区分呢??
展开
1个回答
展开全部
Windows API 中有一个函数 EnumWindows 可以枚举屏幕上的窗口,然后再获取窗口标题或 class 进行判断一下就可以了。
追问
给个demo呢
追答
python 不太熟,可以给你一个 c 语言的 demo
#include <stdlib.h>
#include <Windows.h>
BOOL CALLBACK EnumWindowsProc(
_In_ HWND hwnd,
_In_ LPARAM lParam
);
int _tmain(int argc, _TCHAR* argv[])
{
EnumWindows(EnumWindowsProc, NULL);
system("pause");
return 0;
}
BOOL CALLBACK EnumWindowsProc(
_In_ HWND hwnd,
_In_ LPARAM lParam
)
{
TCHAR szTitle[100];
// 获取窗口标题
GetWindowText(hwnd, szTitle, 100);
if (lstrcmpi(szTitle, _T("")) != 0) {
printf("%ws\n", szTitle);
}
return TRUE;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询