Bonsoir,

Pour simuler l'application telnet, j'ai besoin de détecter chaque caractère saisie et l'envoyer directement sur mon équipement réseau.J'utilise donc les modules Term::Readkey pour détecter chaque caractère saisie et Net::telnet pour l'envoi de chaque caractère sur l'équipement réseau.
Mon problème est que Term::Readkey semble mal ou pas du tout gérer les caractères spéciaux (Return, Key-Up, Key-Down, etc...).

J'utilise comme base ce petit script pour la détection des touches :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/perl -w 
# sascii - Show ASCII values for keypresses
 use Term::ReadKey; 
 ReadMode('cbreak');
 print "Press keys to see their ASCII values. Use Ctrl-C to quit.\n"; 
 while (1) 
 { $char = ReadKey(0);
 last unless defined $char; 
 printf($char);
 printf(" Decimal: %d\tHex: %x\n", ord($char), ord($char));
 }
 ReadMode('normal');
Si j'utilise par exemple la touche "Entrée", je suis obligé d'appuyer plusieurs fois pour qu'il la détecte.

Existe-t-il une solution pour résoudre ce problème ou une méthode pour détecter tous les caractères du clavier ?

Merci de votre aide.

Plateforme: Windows XP / Active Perl 5.10.1