Utilisation des triggers clavier/souris en AutoIt

Le carré VIP, incontournable pour les connaisseurs

Utilisation des triggers clavier/souris en AutoIt

Messagepar ZDS » 02 Avr 2013, 16:54

Bonjour,

Pour information, le langage AutoIt permet de détecter une majorité de touches grace à la fonction HotKeySet, et les autres boutons moins classiques, comme les boutons annexes de la souris (appelés X1 et X2) avec la fonction _IsPressed. Mais _IsPressed détecte seulement leur état à un moment donné du code (_IsPressed("05",$dll) et _IsPressed("06",$dll)). Malheureusement, cette fonction _IsPressed est à proscrire pour deux raisons :

1) elle ne fonctionne pas parfaitement, car pour savoir si le bouton de la souris a été pressé, il faut scruter en permanence l'aspect de ce dernier, ce qui en plus de consommer énormément de ressource, peut ne pas marcher si le PC n'est pas assez réactif (même sur une bête de course, ça arrive) ou si on clique trop vite (il ne détecte pas le clic, mais le fait que le bouton soit appuyé, puis relâché; un clic appui/relâche dure environ 10 à 20ms, c'est pas énorme). Pour que sa réactivité soit correcte, il faudrait faire appel à cette fonction toutes les 5ms, soit 200 fois par seconde.

2) sa présence dans un code AutoIt peut déclencher une alerte antivirus : Même si il s'agit d'un faux-positif, l'utilisation de cette fonction est contestable. En effet, elle fait appel à la primitive "GetAsyncKeyState" de user32.dll, qui est elle même utilisée par certains KeyLoggers. Les antivirus détectent donc certainement l'utilisation abusive de cette primitive pour en bloquer le responsable... Ce qui est aussi idiot que la logique suivante, mais bon :
  • J'aime pas la viande de bœuf quand elle est saignante
  • La RedBull a un logo de taureau rouge
  • Taureau = Boeuf, et Rouge = Saignante
  • Donc je n'aime pas la RedBull
Merci donc de ne pas utiliser cette fonction dans vos modules si vous souhaitez les partager. Préférez les fonctions HotKeySet ou GUISetAccelerators, qui bien que restreintes ne poseront pas de soucis à vos scripts.

A bientôt !
Avatar de l’utilisateur
ZDS
Fondateur [Equipe nAiO]
 
Messages: 526

Retourner vers Coin des développeurs

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 10 invités