Bonjour à tous,
voici une question qui me tracasse !
Pourquoi ce code marche:
Et pas celui-ci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include "windows.h" int main() { HWND handle = FindWindow("notepad",0); SetForegroundWindow(handle);//met la fenêtre sur laquelle on veut écrire au premier plan (ne marche que si fenetre existe, et est non réduite) keybd_event( VK_SPACE, 0, 0, 0 ); // simulation de l'appui de la touche keybd_event( VK_SPACE, 0, KEYEVENTF_KEYUP, 0 ); // simulation du relachement de la touche return 0; }
Dans le premier cas, on est obligé de mettre la fenêtre en question (ici le bloc note) au premier plan, ce que je voudrais éviter, alors que dans le deuxième cas on est censé pouvoir écrire dans la fenêtre choisie sans pour autant devoir la mettre au premier plan, mais ça n'a pas l'air de marcher ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include "windows.h" int main() { HWND handle = FindWindow("notepad",0); SetFocus(handle); // Censé mettre le focus clavier sur la fenêtre ou l'on veut envoyer les touches keybd_event( VK_SPACE, 0, 0, 0 ); // simulation de l'appui de la touche keybd_event( VK_SPACE, 0, KEYEVENTF_KEYUP, 0 ); // simulation du relachement de la touche return 0; }
Merci d'avance !
Partager