在C中获取当前活动的窗口标题

dee*_*392 5 c windows winapi

我想编写一个X-Chat插件,用户可以在其中向我的客户端执行CTCP请求,插件/ X-Chat将使用我当前的活动窗口标题进行响应.

对于其他IRC用户来说,如果我是全屏(玩游戏,观看视频等),我可以看看我要做什么让他们确定我在做什么,这真的很酷.

用于X-Chat的插件是用C语言编写的,所以我需要一种使用来自C的Windows API调用来确定当前活动Window标题的方法.任何人都可以建议如何做到这一点?

谢谢.

hmj*_*mjd 13

你可以GetForegroundWindow()用来获取用户正在使用的窗口的句柄,然后GetWindowText()用来获取标题:

HWND foreground = GetForegroundWindow();
if (foreground)
{
    char window_title[256];
    GetWindowText(foreground, window_title, 256);
}
Run Code Online (Sandbox Code Playgroud)

  • 如果您在*all*进程中查找当前活动窗口,请使用`GetForegroundWindow`,如果您正在***进程中查找活动窗口,请使用`GetActiveWindow`.见[最后,没有什么特别的了](http://blogs.msdn.com/b/oldnewthing/archive/2008/10/06/8969399.aspx). (3认同)