将上述函数中的窗口改成当前电脑所有的窗口
时间: 2023-08-21 20:02:49 浏览: 48
要获取当前电脑所有的窗口并打印窗口名,可以使用操作系统提供的一些系统调用。不同的操作系统提供的系统调用不同,下面是一个基于 Windows 操作系统的实现示例:
```cpp
#include <Windows.h>
#include <vector>
#include <string>
#include <iostream>
int main()
{
std::vector<HWND> windows;
EnumWindows([](HWND hwnd, LPARAM lParam) -> BOOL {
auto& windows = *reinterpret_cast<std::vector<HWND>*>(lParam);
if (IsWindowVisible(hwnd)) {
windows.push_back(hwnd);
}
return TRUE;
}, reinterpret_cast<LPARAM>(&windows));
for (auto hwnd : windows) {
const int max_title_size = 1024;
TCHAR title[max_title_size];
GetWindowText(hwnd, title, max_title_size);
std::wcout << title << std::endl;
}
return 0;
}
```
在这个示例中,我们使用 `EnumWindows` 函数枚举所有的窗口,并将可见窗口的句柄存储在 `windows` 变量中。然后遍历所有的窗口,并使用 `GetWindowText` 函数获取窗口的标题并输出。你可以在这个示例的基础上进行修改以适应不同的操作系统。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-dosexec](https://img-home.csdnimg.cn/images/20210720083343.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)