枚举topmost窗口
时间: 2023-07-19 17:23:59 浏览: 121
一款好用的windows窗口置顶工具
您可以使用Windows API中的EnumWindows函数和GetWindowLong函数来枚举所有的topmost窗口并获取窗口句柄。以下是一个示例代码,用于枚举所有的topmost窗口并打印它们的标题:
``` c++
#include <Windows.h>
#include <iostream>
BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
if (GetWindowLong(hwnd, GWL_EXSTYLE) & WS_EX_TOPMOST) {
char title[256];
GetWindowTextA(hwnd, title, sizeof(title));
std::cout << title << std::endl;
}
return TRUE;
}
int main()
{
EnumWindows(EnumWindowsProc, NULL);
return 0;
}
```
在上面的代码中,EnumWindows函数用于开始枚举所有顶级窗口,而EnumWindowsProc回调函数则用于获取每个窗口的句柄,并且通过GetWindowLong函数获取窗口的扩展风格并判断是否为topmost窗口,如果是则通过GetWindowText函数获取窗口标题信息并打印到控制台上。
阅读全文