Simulation clavier alt+tab + autre probleme

Steph115 Messages postés 163 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 3 février 2012 - 25 juil. 2004 à 03:29
garslouche Messages postés 583 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 29 mai 2015 - 25 juil. 2004 à 14:03
Bonjour a tous,

Mon premier probleme est que je n'arrive pas a simuler la combinaison de touches VK_TAB et VK_MENU pour faire un alt+tab comme si le VK_TAB n'etait pas bon (cela pourrais t-l venir du clavier QWERTY/AZERTY)
bizzare tout ca pour mon ALT+ENTER il y a pas de problemes ce que j'ai trouver bizzare c le 0x1c car sur msdn ce n'est pas un 1c masi un 0D par contre la touche alt marche bien
keybd_event(VK_RETURN,0x1c,0,0); 
keybd_event(VK_RETURN,0x1c,KEYEVENTF_KEYUP,0);


Deuxieme probleme :
     HWND console;
    AllocConsole(); // affiche console
    SetConsoleTitle("Calendrier by A&Nexus"); // titre console
    
    // redirection flux entree/sortie
    freopen("conin$", "r", stdin); 
    freopen("conout$", "w", stdout); 
    freopen("conout$", "w", stderr);
    
    console = GetConsoleHwnd();
  
    ShowWindow(console, SW_SHOWNA);
    main_console();
    ShowWindow(console, SW_HIDE);

P.S ceci est normal qu'il n'y es pas de FreeConsole();
j'aimerais savoir si mon appli console (main_console) a ete quitte proprement(ca je le sais) ou ete quitte avec un clic sur la croix et dans ce cas si elle a ete quitte avec la crosi je fais un RetIcone();

Voila si qqun connait la reponse a un de ces problemes merci de m'en faire part.

Merci. ++ Nexus

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.

7 réponses

garslouche Messages postés 583 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 29 mai 2015 1
25 juil. 2004 à 10:54
Pour simuler Alt+Tab je ferais ça :

keybd_event(VK_MENU, 0, 0, 0);
keybd_event(VK_TAB, 0, 0, 0);
keybd_event(VK_TAB, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);

Pour ton pb de console, je n'en fait jamais. Ceci-dit je pense que si tu atteinds la fin de ton main() c'est que ça a été fermé proprement. Alors qu'une fermeture "brutale" de la console te kille ton prog la où il en était

On ne force pas une curiosité, on l'éveille.
.................................................Daniel Pennac
Steph115 Messages postés 163 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 3 février 2012
25 juil. 2004 à 12:31
Alors voila la combinaison ne marche pas mais bon je m'en doutais un peu j'avais deja fait des tests la dessus dans le deuxieme parametre lui il veut absolument un code en hexa representant le numero de touche d'apres ce que j'ai compris.

Saurais tu comment savoir si la console(qui n'est en fait qu'une fenetre) a ete ferme avec la petite croix ???
Comment ferais tu avec une fenetre normale si tu avais son HWND ???

Merci. ++ Nexus

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
25 juil. 2004 à 13:05
NON, la console n'a rien d'une fenetre ordinaire, si user la ferme par quelque moyen tu n'as aucun retour dessus.
La console n'est a employer que si tu fais un compilo ou truc de ce genre, plus rien a faire dans un autre prog.

ciao...
BruNews, Admin CS, MVP Visual C++
Steph115 Messages postés 163 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 3 février 2012
25 juil. 2004 à 13:28
Ok je te remercie je vais attendre al rentre alors pour programmer sur une fenetre windows t'auais pas un tuto sympa qui nosu apprendrait a ecrire sur des fenetres etc...

Merci bien et aurais tu la reponse pour ma simualtion de alt+tab ???

Merci. ++ Nexus

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
25 juil. 2004 à 13:38
SetForegroundWindow au lieu des keybd_event.

Tout est dans Petzold pour debuter correctement:
http://brunews.free.fr/brunews/download/CP5.zip
http://brunews.free.fr/brunews/download/CP5Sources.zip

ciao...
BruNews, Admin CS, MVP Visual C++
Steph115 Messages postés 163 Date d'inscription mercredi 22 octobre 2003 Statut Membre Dernière intervention 3 février 2012
25 juil. 2004 à 13:47
Je te remercie vraiment ... :):):)

je vais consulter la doc des que je peux.

Merci. ++++ Nexus

Chaque problème a sa solution. S'il n'y a pas de solution c'est qu'il n'y a pas de problème.
garslouche Messages postés 583 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 29 mai 2015 1
25 juil. 2004 à 14:03
Pour ma simulation de Alt+Tab ça marche très bien chez moi. Même en mode console.
Le seul truc c'est que pour s'en rendre compte il faut le lancer à partir de la console (sinon la fenetre de console se ferme tout de suite et on ne voit pas ce qui s'est passé)

On ne force pas une curiosité, on l'éveille.
.................................................Daniel Pennac
Rejoignez-nous