Bonjour Lecods,
Excellent ton code, il marche à merveille !
Juste un conseil final:
Comment sortir de la boucle proprement.
Je sortait de mon programme en apuyant sur une touche, mais comme on le simule, c'est foutu.
Voici mon code:
do {
temp = 0;
if(ReadCOM(buffer,sizeof(buffer)-1,&nBytesRead) && nBytesRead>0) { // recevoir des données
temp = 1;
buffer[nBytesRead] = '\0';
printf("\r%d octet(s) recu(s): %s",nBytesRead,buffer);
for (i=0;i<strlen(buffer)-1;i++) { // INPUT_KEYBOARD VkKeyScan MapVirtualKey ToAscii
sCar = VkKeyScan((TCHAR)(buffer[i]));
if ((sCar & 0x0100)) keybd_event(VK_SHIFT,0,0,0); // Shift
if ((sCar & 0x0200)) keybd_event(VK_CONTROL,0,0,0); // Ctrl
if ((sCar & 0x0400)) keybd_event(VK_MENU,0,0,0); // Alt
keybd_event((unsigned char)sCar,0,0,0); // Virtual-Key Codes
keybd_event((unsigned char)sCar,0,KEYEVENTF_KEYUP,0);
if ((sCar & 0x0400)) keybd_event(VK_MENU,0,KEYEVENTF_KEYUP,0); // Alt
if ((sCar & 0x0200)) keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0); // Ctrl
if ((sCar & 0x0100)) keybd_event(VK_SHIFT,0,KEYEVENTF_KEYUP,0); // Shift
}
} // */
} while(!kbhit() || temp==0);
Mais ça ne marche pas, il faut appuyer sur une touche et repasser dans la condition pour sortir
En clair, comment nettoyer le buffer après le traitement ?

David, à VERSAILLES