[Term::Readkey] Détection saisie clavier (caractères spéciaux)
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:
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