IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Différencier 2 lecteurs de code barres sur USB (niveau origine des données)


Sujet :

Visual C++

  1. #1
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    650
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 650
    Points : 546
    Points
    546
    Par défaut Différencier 2 lecteurs de code barres sur USB (niveau origine des données)
    Bonjour,

    Je cherche à differencier 2 lecteurs de code barres sur une meme appli, j'mexplique :

    Je doire faire une appli utilisant 2 lecteur de code-barres USB, sachant que la lecture du premier doit être traité d'une facon et celle de l'autre lecteur d'une autre façon.

    Quelqu'un aurait il une piste ?

    Pour l'instant, pour intercepter la saisie du lecteur, je me base sur la vitesse de saisie avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    BOOL DlScanner::PreTranslateMessage(MSG* pMsg)
    {
       if ( pMsg->message == WM_KEYDOWN ) // evenement = pression d'une touche
       {
    		// Ecart maximal de 1 seconde entre chaque touche sinon on vide le buffer
    		CTime tNow = CTime::GetCurrentTime();
    		if ( (tNow - p_tLastInput) > 1 ){
    			p_KeyInput.reset();
    			p_tLastInput = tNow;
    		}
     
    	   if ( (pMsg->wParam >= 0x30) &&  (pMsg->wParam <= 0x39 )) // chiffre [0] [1] ... [9]
           {
    		   // conversion du nombre en nombre :) ex : 0x34 -> 4
    		   p_KeyInput.set((int)(pMsg->wParam - 0x30)); 
    		   return TRUE; // fin de l'analyse du message
    	   }
    	   else if (pMsg->wParam == VK_RETURN)	// touche [ ENTER ]
    	   {
    		   if (p_KeyInput.isValid())
    		   {			   
    			   AnalyseCodeBarre(p_KeyInput.getCodeBarre());
    		   }
     
    		   // réinitialisation de la saisie
    		   p_KeyInput.reset();
     
    		   return TRUE; // fin de l'analyse du message
    	   }
    	   else if (pMsg->wParam != VK_SHIFT) // [ SHIFT ] necessaire pour les chiffres via la douchette
    	   {
    		   // toute autre touche réinitialise la saisie
    		   p_KeyInput.reset();
    	   }
    	}
        return CDigiDialog::PreTranslateMessage(pMsg); // retransmission du message si non traité
    }

  2. #2
    Membre averti Avatar de BOUBOU81
    Profil pro
    system integrator
    Inscrit en
    Juin 2004
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : Allemagne

    Informations professionnelles :
    Activité : system integrator

    Informations forums :
    Inscription : Juin 2004
    Messages : 358
    Points : 315
    Points
    315
    Par défaut
    Tu ne peux pas parametrer ton lecteur code à barre pour qu'il t'envoie son identifiant en debut de trame, ce serai le plus simple (si c'est possible).

  3. #3
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    650
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 650
    Points : 546
    Points
    546
    Par défaut
    Je ne crois pas non, il agit vraiment comme un clavier

  4. #4
    Membre averti Avatar de BOUBOU81
    Profil pro
    system integrator
    Inscrit en
    Juin 2004
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : Allemagne

    Informations professionnelles :
    Activité : system integrator

    Informations forums :
    Inscription : Juin 2004
    Messages : 358
    Points : 315
    Points
    315
    Par défaut
    Mais c'est peut-être possible, moi certain lecteur CAB qui fonctionne en emulation clavier, mais j'arrive quand à faire des encapsulations de mon code à barre.
    Mais je suppose que tu as regardé la doc déja donc, désolé mais ma solution ne fonctionnera pas.

  5. #5
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    650
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 650
    Points : 546
    Points
    546
    Par défaut
    En fait, je doit m'interfacer avec une solution existante sur laquel je n'ai pas la main,

    je ne peux la modifier, et la spec qui m'est donné donne comme resultat de la lecture "code barre + Enter"

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    je ne pense pas que tu puisses faire la différence...
    la seule chose que tu pourrais faire c'est un parametrage différent de la douchette pour les distinguer .
    exemple la programmer pour ne pas envoyer le CR en automatique.
    ou voir les options des codes préfixes.
    mais c'est la seule piste que tu pourras exploiter.

  7. #7
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    650
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 650
    Points : 546
    Points
    546
    Par défaut
    Argh ! si toi, farscape, tu penses que ce n'est pas possible, jsuis marron !

    J'avais espéré qu'il y est une possibilité d'avoir un quelconque id issu de l'usb qui envoi.

    Merci quand même à vous 2

  8. #8
    Membre confirmé
    Profil pro
    Développeur indépendant
    Inscrit en
    Août 2004
    Messages
    373
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur indépendant
    Secteur : Transports

    Informations forums :
    Inscription : Août 2004
    Messages : 373
    Points : 512
    Points
    512
    Par défaut differenciation lecteur code barre.
    au vu de ce que tu as posté, tu utilises une emulation clavier.
    pour un lecteur, j'aurais dit, oui, ca reste utilisable, pour deux, c'est une erreur, surtout si tu veux leur donner un comportement differencié.
    donc, question, es tu obligé de les avoir en emulation clavier.?
    si non, alors ton probleme est en passe d'être résolu.
    utilise les comme des periphériques sur port série. ne pas oublier que les ports USB sont des ports série à la base..
    tu pourras les configurer en fonction de leur numéro de port, une routine de controle du port série, pour chacun, et hop.
    si tu as absolument besoin d'une emulation clavier, tu peux toujours reinjecter les codes caracteres dans le buffer clavier aprés récupération par la routine port série.
    pour mémoire, farscape a posté une trés bonne routine de controle des ports série..
    merci encore farscape.

Discussions similaires

  1. lecteur de code à barre usb dans un TEdit sur une fiche
    Par tleboukaka dans le forum Langage
    Réponses: 8
    Dernier message: 29/09/2015, 19h24
  2. lecteurs de code barre USB pour un programme
    Par rikidi dans le forum VB.NET
    Réponses: 2
    Dernier message: 14/02/2014, 15h51
  3. Developper pour une lecteur de code barre fonctionnant sur Windows CE
    Par QAYS dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 19/03/2010, 16h47
  4. [Système] Lecteur code-barre en USB
    Par rod76100 dans le forum Langage
    Réponses: 2
    Dernier message: 14/10/2007, 18h17
  5. Programmer un lecteur de code à barre
    Par tleboukaka dans le forum Bases de données
    Réponses: 3
    Dernier message: 12/09/2005, 17h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo