[..] Ecoute lecteur code barre

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
jeanphi45
Niveau 2
Niveau 2
Messages : 19
Enregistré le : jeu. 23 sept. 2010 09:55
Status : Hors ligne

[..] Ecoute lecteur code barre

#1

Message par jeanphi45 »

Bonjour chers autoitésiens ,

J'ai un lecteur code barre usb. Dès que je scanne un code barre il écrit ce code dans l'appli où je suis , exemple dans notepad , excel ...

Ce que je voudrais faire : dès que je scanne un code barre , le systeme m'ouvre sous Firefox la page web https://nom_de_monsite.fr/echantillon/afficher/id/108217#

, où 108217 est mon code barre.

Comment faire avec auto-it pour que le système "écoute " le lecteur code barre ( qui en fait se comporte exactement comme un clavier ) ? Peut-on écouter tel ou tel port usb ?

Merci d'avance pour vos propositions.

PS : je suis sous Windows 7
Avatar du membre
blacksoul305
Membre émérite
Membre émérite
Messages : 957
Enregistré le : ven. 18 mars 2011 11:49
Localisation : Au pays des programmeurs.
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#2

Message par blacksoul305 »

Bonjour,

à première vue, je dirai qu'il faudrait voir du côté du constructeur, voir s'il n'y a pas une API pour pouvoir manier le lecteur de code barre.
Étudiant en 2ème année de Licence Informatique.
Avatar du membre
mimione
Niveau 4
Niveau 4
Messages : 91
Enregistré le : mer. 30 avr. 2008 18:11
Localisation : Bretagne
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#3

Message par mimione »

Bonjour

Peut-être comme ça ??
(le lecteur doit être configuré pour générer un CR/LF en fin de scan, ce qui déclenche l'événement du champ)

Bon. ça ne marche que dans une appli AutoIt, et cela ne résout pas votre problème pour le scan dans une autre appli...

Bonne journée

Code : Tout sélectionner

#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=C:\Users\Michel\Desktop\Form1.kxf
Global $Form1 = GUICreate("Form1", 294, 168, 192, 124)
Global $Input1 = GUICtrlCreateInput("", 76, 52, 125, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

ControlFocus(WinGetTitle("[active]"), "", $Input1)

While 1
 $nMsg = GUIGetMsg()
 Switch $nMsg
  Case $GUI_EVENT_CLOSE
         Exit

   Case $Input1
         beep ()
         ;-- Appel fonction --
         ;.............
 EndSwitch
WEnd

 
Je ne suis pas toujours de mon avis....
--------------------------------------------
Des malheurs évités le bonheur se compose.
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#4

Message par Hugues »

Salut,

Tu peux forcer l'affichage de ton GUI avec WinSetOnTop() (de mémoire), ensuite de forcer le focus dans ton inputbox et avec un WM_Command(), tu lances l'ouverture de ta page Web.
► Afficher le texte
Modifié en dernier par Hugues le lun. 23 mars 2015 14:07, modifié 1 fois.
Avatar du membre
jeanphi45
Niveau 2
Niveau 2
Messages : 19
Enregistré le : jeu. 23 sept. 2010 09:55
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#5

Message par jeanphi45 »

En fait ce que je ne sais pas faire , étant donné que le lecteur code-barre usb se comporte comme un clavier , c'est que le système différencie une saisie au clavier d'une pression sur le bouton du lecteur code_barre.

Si j'ai bien compris il faut que j'écrive une appli auto-it qui "écoute" les entrées mais qui ne considère que celle provenant du lecteur code-barre et c'est là que semble être la difficulté.

Quant à ouvrir une url sous firefox, je l'ai déjà fait :

Code : Tout sélectionner

   Opt("WinTitleMatchMode", 2)
   Run (@ProgramFilesDir & "\Mozilla Firefox\firefox.exe http://unsite.fr")
   WinWaitActive("Mozilla Firefox")
   WinActivate("Mozilla Firefox")
Donc , en résumé , comment écouter le port usb qui supporte le lecteur code-barre ? ( ou sion écouter tous les ports usb en entrée et filtrer sur le lecteur code barre )
Hugues
Niveau 8
Niveau 8
Messages : 597
Enregistré le : ven. 21 sept. 2012 18:12
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#6

Message par Hugues »

Un p'tit bout de code. Et tu Si ton Id est toujours numérique, tu peux interdire les autres entrées...

EDIT du code à 14:18

► Afficher le texte
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Ecoute lecteur code barre

#7

Message par jchd »

J'ai eu le même problème : différencier un "vrai" clavier d'un lecteur de codes à barres.

J'avais trouvé une solution mais en fait je n'ai jamais eu à l'utiliser en pratique, ayant mis en oeuvre un contexte distinct.

L'idée est d'intercepter à un niveau assez bas pour identifier le périphérique émetteur des scancodes.

Je livre ce que j'ai, brut de fonderie, sans avoir de souvenirs très précis sur les détails de ce bidule.

RawInput.au3
RawInput.au3
(40.92 Kio) Téléchargé 133 fois
Barcode Reader Filter.au3
Barcode Reader Filter.au3
(5.7 Kio) Téléchargé 151 fois
Si je ne m'abuse, il faut d'abord scanner l'ensemble de périphériques HID, juste pour identifier celui qu'on veut. En l'occurrence, mon lecteur déclarait 160 "touches", ce qui le distinguait d'un clavier. Un fois qu'on sait quel périphérique intercepter, y'a plus qu'à.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Répondre