activer une touche du clavier

activer une touche du clavier - Perl - Programmation

Marsh Posté le 02-07-2004 à 12:39:14    

Bonjour,
 
je voulais savoir si c'était possible d'activer une touche clavier en perl.Non pas en utilisant <stdin>. en faite j'ouvre Raspppoe en ligne de commande une fenêtre pop up s'ouvre et la on clique sur un bouton qui ouvre une deuxième fenêtre. et dc j'aimerais savoir comment le faire en perl?si je ne suis pas assez clair n'hesitez pas à me poser des questions.
je vous remercie pour votre aide.

Reply

Marsh Posté le 02-07-2004 à 12:39:14   

Reply

Marsh Posté le 02-07-2004 à 15:02:08    

sous Windows tu a Win32::GuiTest qui permet de faire ce genre de choses:
 
http://search.cpan.org/~ctrondlp/W [...] guitest.pm

Reply

Marsh Posté le 02-07-2004 à 16:58:53    

merci, je vais tester!!

Reply

Marsh Posté le 05-07-2004 à 14:03:24    

j'ai essayé d'installer le module mais ça ne marche pas

Reply

Marsh Posté le 05-07-2004 à 23:57:08    

peut tu donner "moins" de détail?
 
c'est l'install qui marche pas? sous quel plateforme? kess que t'as fait?


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 06-07-2004 à 00:15:21    

il es sous windows (c'est un module win32)
on va supposer qu'il est sous activePerl
 
bon, pour installer ce module il faut compiler les .xs, donc soit t'as un compilo sur ta machine (et pas n'importelekel: VC++), soit tu trouve un ppd à installer directement avec ppm
 
l'auteur en fourni un pour Perl 5.6 (et qui n'est pas compatible avec Perl 5.8...)
 
tout est expliqué la:
http://search.cpan.org/~ctrondlp/W [...] guitest.pm
 
si tu es sous Perl 5.8 (ce que je te souhaite car, pour al version ActivePerl, il est beaucoup plus stable que leur 5.6, notament pour l'utilisation de la memoire), alors il va falloir que tu te trouve un ppd adapté...

Reply

Marsh Posté le 24-07-2004 à 10:14:44    

le ppd est normalement fourni, dans le zip que tu télécharges sur cpan : http://search.cpan.org/CPAN/author [...] 0.2-ad.zip
 
Il y a un ppd dedans, tu dois utiliser ppm et faire 'install win32-guitest.ppd' en t'etant plaçé dans le bon répertoire.
 
Apres, il suffit d'utiliser la fonction SendKey comme mentionné dans le .pm ;)


---------------
prout
Reply

Marsh Posté le 24-07-2004 à 16:31:44    

ce ppd fourni est pour perl 5.6, et il a perl 5.8 (les builds 6xx et 8xx sont incompatibles)

Reply

Marsh Posté le 24-07-2004 à 16:39:45    

Citation :

G:\Documents and Settings\xstephx1>perl -v
 
This is perl, v5.8.0 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
 
Copyright 1987-2002, Larry Wall
 
Binary build 806 provided by ActiveState Corp. http://www.ActiveState.com
Built 00:45:44 Mar 31 2003


 
j'ai AP 5.8 aussi, et j'utilise le module sans problemes ;)


---------------
prout
Reply

Marsh Posté le 24-07-2004 à 18:45:59    

oups exacte, l'auteur à mis le ppd à jour:
 

Citation :

<SOFTPKG NAME="Win32-GuiTest" VERSION="1,50,2-ad,0">
    <TITLE>Win32-GuiTest</TITLE>
    <ABSTRACT>Alternate distribution of Perl GUI Test Utilities.</ABSTRACT>
    <AUTHOR>Dennis K. Paulsen (ctrondlpaulsden@yahoo.com)</AUTHOR>
    <IMPLEMENTATION>
        <OS NAME="MSWin32" />
        <ARCHITECTURE NAME="MSWin32-x86-multi-thread-5.8" />
        <CODEBASE HREF="Win32-GuiTest.tar.gz"/>
    </IMPLEMENTATION>
</SOFTPKG>


 
mais il n'a pas mis le pod du module à jour :
 

Citation :

If you are using ActivePerl 5.6 (http://www.activestate.com/Products/ActivePerl/index.html) you can install the binary package I am including instead. You will need to enter PPM (Perl Package Manager) from the command-line.


 
a l'epoque je l'avait installé sur mon perl 5.6, donc le ppd etait bien pour la 5.6, et je l'ai pas utilsé depuis. Pourtant la modif ne figure pas dans le log des mises à jours...

Reply

Marsh Posté le 24-07-2004 à 18:45:59   

Reply

Marsh Posté le 25-07-2004 à 10:28:27    

à propos de ce module, j'ai un probleme avec la fonction IsKeyPressed : pour les chiffres (quand je fais un if et while IsKeyPressed('8') par exemple, ça ne fonctionne que si j'appuie sur les touches au dessus des lettres (comme sur les claviers américains où les chiffres sont en bas (donc sans Shift) sur les touches au dessus des lettres. Mais si j'appuie sur le pavé numérique, ça ne marche pas... :/
 
Si vous avez une idée pour solutionner ce problème, ça m'arrangerait ;)
 
Merci


---------------
prout
Reply

Sujets relatifs:

Leave a Replay

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