有什么办法可以通过不完整的名称查找窗口?

例如,您如何找到一个可以包含多个标题名称的Google Chrome窗口?
就像Stack Overflow-Google Chrome

如果窗口始终具有与下面的函数相同的名称,则FindWindow函数将非常有用。

HWND chrome = FindWindow(NULL,_T("Stack Overflow - Google Chrome"));
SetForegroundWindow(chrome);

但是,如果名称不断变化(如浏览器),会发生什么?如何通过搜索固定的开始/结束位置找到窗口?

我正在寻找类似于FindWindow(NULL,_T("something here - Google Chrome")的东西。有什么办法吗?

最佳答案

您可以使用窗口类名代替窗口标题。例如,您可以找到带有

HWND firefox = FindWindow(_T("MozillaWindowClass"), NULL);

您可以使用任何窗口 spy 类型的应用程序,例如WinSight,WinSpy ++或(我用来查找Firefox窗口类的那个)AutoHotkey的Window Spy实用程序。

有关更多信息,请参见 FindWindow 的MSDN文档。

07-26 09:37
查看更多