Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Gescannten Barcode abfangen (https://www.delphipraxis.net/116626-gescannten-barcode-abfangen.html)

Masteric 3. Jul 2008 08:56


Gescannten Barcode abfangen
 
Hi,

was ich wollte war es den Barcode, den ein USB BCC scant und über die Tastatur eingibt, abfangen. Da der BCC sich als HID angibt, also wie eine USB Tastatur, habe ich schon aus einigen anderen Beiträgen entnommen, dass es nicht möglich ist.

Mich würde interessieren, wie Windows das genau mit den Eingaben macht.

Könnte man verhindern, dass Windows die gedrückten Tasten an das aktive Fenster sendet?
Also das ich sie vorher abfange durch einen Hook, an den Tasten selber kann ich ja nichts ändern, da ich nur Lese Rechte habe, dann nachschaue, ob es vom BCC kommt, mit der Methode die ich hier im Forum schon gesehen habe und wenn es vom BCC kommt einfach nur an mein Programm, was im Hintergrund läuft, sende und ansonsten an das aktive Fenster. Also die Tasten vom BCC nicht an das aktive Fenster gesendet werden?


Schon Mal Vielen Dank für jede Hilfe im Voraus :thumb:


Gruß Masteric

franktron 3. Jul 2008 10:18

Re: Gescannten Barcode abfangen
 
Mann kann die meisten USB Scanner auf RS232 umstellen.

alzaimar 3. Jul 2008 10:23

Re: Gescannten Barcode abfangen
 
Du kannst bei vielen Scannern einen preambel und postable-Code einrichten. Ich hatte mal einen Scanner, da war das z.B. 2x F1-KeyUP . Das kann man mit einer normalen Tastatur ja nie tippen, denn die Sequenz wäre immer DOWN-UP-DOWN-UP.

Ich hab mir also einen globalen Keyboard-hook geschrieben, der einfach bei doppeltem F1-KeyUP reagiert, dann alles loggt, bis wieder 2x F1-KeyUP kommt und dann hatte ich meinen Barcode :mrgreen: .

(Eigentlich war es eine 8-KEY-Sequenz, so'ne Art UP-UP-DOWN-UP-UP-DOWN-DOWN..)

Vielleicht kannst du per Preambel dem Barcode auch ein '$##$' oder so ein Quark voranstellen, also irgendetwas Exotisches und dann beten, das keiner so einen Mumpitz eintippt.

Masteric 3. Jul 2008 12:34

Re: Gescannten Barcode abfangen
 
schon Mal Danke für die guten Tipps, werde sie auf jeden Fall ausprobieren!

kann ich dann verhindern, dass es an das aktive Fenster gesendet wird?
Z. B. läuft im Vordergrund Word und da soll das dann ja nicht eingegeben werden :zwinker:

Gruß Masteric

alzaimar 3. Jul 2008 12:38

Re: Gescannten Barcode abfangen
 
Zitat:

Zitat von Masteric
Z. B. läuft im Vordergrund Word und da soll das dann ja nicht eingegeben werden :zwinker:

Genau aus diesem Grund habe ich o.g. Lösung entwickelt. Die Zielanwendung registriert sich beim 'BarcodeAbfang-O-Mat', dieser prüft alles, was über die Tastatur kommt, biegt den Scanner-Mupitz um und schickt dann der registrierten Anwendung eine Message 'Barcode angekommen'. Die kann den Scan im Hintergrund verarbeiten und der, der gerade in Word bastelt, bekommt davon nichts mit (wenn er denn nicht gerade non-stop tippelt)

Masteric 4. Jul 2008 10:03

Re: Gescannten Barcode abfangen
 
da ich mich leider mit hooks noch nicht richtig beschäftigt habe und auch nur für diesen scanner gelesen habe, dass ich sie brauche, bräuchte ich vielleicht nochmal Hilfe.

Ich weis, dass ich für einen globalen Hook, der wahrscheinlich das ist, was ich brauche, eine dll brauch. Muss das für mein Vorhaben eine bestimmte sein?
Wenn nein, gibt es fertige Hook Dlls, die offen zur Verfügung gestellt werden?

Und kann mir bitte wer sagen, wie ich eine Anwendung bei meiner registrieren kann, bzw. wie ich die dll einbinde?

Hab mir schon das eine oder andere Tutorial angeschaut, nur so von 0 auf 100 ist das nicht zu verstehen...


Vielen Dank

Gruß Masteric

alzaimar 4. Jul 2008 10:34

Re: Gescannten Barcode abfangen
 
Hier gibt es einige Threads zu dem Thema, Mach bitte einen neuen Thread auf und frage nach Hilfe bezüglich des Hooks.

Is halt so.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz