2012-05-24 2 views
5

Je veux écrire un plugin X-Chat où les utilisateurs pourront effectuer une requête CTCP à mon client, où le plugin/X-Chat répondra avec mon titre de fenêtre active. Ce serait vraiment cool pour les autres utilisateurs IRC de voir ce que je fais pour leur permettre de déterminer ce que je fais si je suis en plein écran (jouer à un jeu, regarder une vidéo, etc.).Récupère le titre de la fenêtre active en C

Les plugins pour X-Chat sont écrits en C, j'ai donc besoin d'un moyen de déterminer le titre de la fenêtre active en utilisant les appels d'API Windows de C. Quelqu'un peut-il nous expliquer comment cela pourrait être fait?

Merci.

+0

Non, vous n'avez pas besoin. Vous pouvez également utiliser Python ou Perl. – Gandaro

Répondre

12

Je pense vous pouvez utiliser GetForegroundWindow() pour obtenir une poignée à la fenêtre, l'utilisateur utilise puis utilisez GetWindowText() pour obtenir le titre:

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

Utilisez 'GetForegroundWindow' si vous recherchez la fenêtre active en cours parmi * tous * les processus, ou utilisez' GetActiveWindow' si vous recherchez la fenêtre active dans juste * votre * processus. Voir [Finalement, rien n'est plus spécial] (http://blogs.msdn.com/b/oldnewthing/archive/2008/10/06/8969399.aspx). –

+0

@AdamRosenfield, merci pour ce lien. – hmjd

Questions connexes