C# を使用して現在アクティブなウィンドウのタイトルを取得するにはどうすればよいでしょうか? 質問する

C# を使用して現在アクティブなウィンドウのタイトルを取得するにはどうすればよいでしょうか? 質問する

C# を使用して、現在アクティブなウィンドウ (つまり、フォーカスがあるウィンドウ) のウィンドウ タイトルを取得する方法を知りたいです。

ベストアンサー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 のコメントを追加しました。

おすすめ記事