windows怎么获取窗口句柄

905
2023/11/20 20:36:04
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Windows操作系统中,可以使用以下方法来获取窗口句柄:

  1. 使用FindWindow函数:该函数可以通过窗口的类名和窗口标题来获取窗口句柄。示例代码如下:
HWND hwnd = FindWindow(NULL, "窗口标题");
  1. 使用FindWindowEx函数:该函数可以通过父窗口句柄、子窗口类名和子窗口标题来获取子窗口的句柄。示例代码如下:
HWND hwnd = FindWindowEx(parentHwnd, NULL, "子窗口类名", "子窗口标题");
  1. 使用GetForegroundWindow函数:该函数可以获取当前活动窗口的句柄。示例代码如下:
HWND hwnd = GetForegroundWindow();
  1. 使用EnumWindows函数:该函数可以遍历系统中所有窗口,并通过回调函数获取每个窗口的句柄。示例代码如下:
#include <iostream>
#include <Windows.h>

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
    char title[256];
    GetWindowTextA(hwnd, title, sizeof(title));
    std::cout << "窗口标题:" << title << std::endl;
    return TRUE;
}

int main()
{
    EnumWindows(EnumWindowsProc, NULL);
    return 0;
}

以上方法中,需要注意的是,窗口句柄(HWND)是一个指向窗口的唯一标识符,可以通过该句柄来进行窗口操作,如发送消息、改变窗口属性等。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Windows出现StackHash_0a9e故障怎么解决