[C] emulation frappe de touche

emulation frappe de touche [C] - Programmation

Marsh Posté le 17-04-2001 à 20:27:36    

Comment on fait pour simuler la frappe de touches dans un programme en C pour piloter une application DOS.
 
Par exemple quand on a lancé Format c: avec "system" faire appuyer sur Y puis ENTREE automatiquement.( ouiap bon c'est l'exemple le plus simple que j'ai trouvé!    :sarcastic: )


---------------
I'm the POPOV masqué !!   ;)
Reply

Marsh Posté le 17-04-2001 à 20:27:36   

Reply

Marsh Posté le 18-04-2001 à 09:53:58    

tu fais un toto=getch() ou toto=getchar()
et tu testes ensuite le toto.
 
si c ca que tu cherches...
 
a+


---------------
-Hassan Cehef --> C'est possible -Roberttripoux --> Les bons comptes font les bons amis
Reply

Marsh Posté le 18-04-2001 à 10:14:43    

As tu essayé (comme dans un batch) de mettre dans les params de ta commande à lancer le /Y qui évite la demande de confirmation ?
Je peux pas t'en dire plus je connais très très peu le C.

Reply

Marsh Posté le 18-04-2001 à 18:29:52    

le /Y marche pas avec toutes les commandes.......
 
Et le getch ca marche pas dans le programme DOS, que dans le prog C...


---------------
I'm the POPOV masqué !!   ;)
Reply

Marsh Posté le 19-04-2001 à 00:10:22    

Tiens essaies avec cà :
 
//////////////////////////////////////////////////////////////////////
// Simule l'appui sur une touche (a à z) du clavier    //
//////////////////////////////////////////////////////////////////////
 
void CNM_CLIENTDlg::WriteLettre(int ascii)
{
 keybd_event(ascii, MapVirtualKey(ascii, 0), 0, 0);
 keybd_event(ascii, MapVirtualKey(ascii, 0), KEYEVENTF_KEYUP, 0);
}
 
//////////////////////////////////////////////////////////////////////
// Simule l'appui sur une touche (A à Z) du clavier    //
//////////////////////////////////////////////////////////////////////
 
void CNM_CLIENTDlg::WriteLettreMaj(int ascii)
{
 keybd_event(VK_SHIFT, MapVirtualKey(VK_SHIFT, 0), 0, 0);
 keybd_event(ascii, MapVirtualKey(ascii, 0), 0, 0);
 keybd_event(ascii, MapVirtualKey(ascii, 0), KEYEVENTF_KEYUP, 0);
 keybd_event(VK_SHIFT, MapVirtualKey(VK_SHIFT, 0), KEYEVENTF_KEYUP, 0);
}
 
 
@+
Flying

Reply

Marsh Posté le 19-04-2001 à 07:57:28    

c est pas du C ca , mais plutot du C++ sous zindows

Reply

Marsh Posté le 19-04-2001 à 21:17:05    

Merci!
Mais mon projet doit etre en C, pas en C++ (je sais c debile...)
 
La meme chose en C SVP ??


---------------
I'm the POPOV masqué !!   ;)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed