2012-05-24 12 views
5

ユーザーがCTCP要求をクライアントに実行できるようにするX-Chatプラグインを作成すると、プラグイン/ X-Chatは現在のアクティブなウィンドウタイトルで応答します。Cで現在アクティブなウィンドウタイトルを取得

これは、私が全画面(ゲームをしたり、ビデオを見たりしている)の場合、自分が何をしているのかを仲間のIRCユーザーが判断できるようにするために本当にうれしいです。

X-Chat用のプラグインはC言語で書かれているので、CのWindows API呼び出しを使用して現在のアクティブなウィンドウタイトルを判断する方法が必要です。

ありがとうございました。

+0

いいえ、あなたがする必要はありません。 PythonまたはPerlを使用することもできます。 – Gandaro

答えて

12

私は、ユーザーが使用しているウィンドウのハンドルを取得し、タイトルを取得するためにGetWindowText()を使用するGetForegroundWindow()を使用することができます考える:ここ

HWND foreground = GetForegroundWindow(); 
if (foreground) 
{ 
    char window_title[256]; 
    GetWindowText(foreground, window_title, 256); 
} 
+3

*すべての*プロセスの中で現在アクティブなウィンドウを探している場合は 'GetForegroundWindow'を使い、*あなたの*プロセスだけでアクティブなウィンドウを探している場合は' GetActiveWindow'を使います。 [最終的に何も特別なものはありません](http://blogs.msdn.com/b/oldnewthing/archive/2008/10/06/8969399.aspx)を参照してください。 –

+0

@AdamRosenfield、このリンクに感謝します。 – hmjd

関連する問題