小编典典

如何使用C#获取当前活动窗口的标题?

c#

我想知道如何使用C#来获取当前活动窗口(即具有焦点的窗口)的窗口标题。


阅读 778

收藏
2020-05-19

共1个答案

小编典典

在此处查看有关如何使用完整源代码执行此操作的示例:

http://www.csharphelp.com/2006/08/get-current-window-handle-and-caption-with-
windows-api-in-c/

[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();

[DllImport("user32.dll")]
static extern int GetWindowText(IntPtr hWnd, StringBuilder text, int count);

private string GetActiveWindowTitle()
{
    const int nChars = 256;
    StringBuilder Buff = new StringBuilder(nChars);
    IntPtr handle = GetForegroundWindow();

    if (GetWindowText(handle, Buff, nChars) > 0)
    {
        return Buff.ToString();
    }
    return null;
}

*使用@Doug McClean注释进行 *编辑, 以获得更好的正确性。

2020-05-19