Barcode in Visual Basic

Ich möchte mi demnächst einen Barcodescanner kaufen und diesen Barcode dann in meinen Rechner einlesen und anschließend weiterverarbeiten.
Kann mir jemand sagen wie ich das mit Visual Basic lösen kann?

Danke für deine Tips.

Hi,
Barcodes sind erstmal ganz normale Zeichen, d.h. Du kannst sie in einem normalen Eingabefeld verarbeiten. Das Scangerät liefert Dir (einstellbar) je eine Start- und eine Endkennung mit, so daß Dein Programm das Ende der Eingabe mitbekommt, am besten macht man ein Tabulatorzeichen als Endekennung und reagiert auf das Validieren-Ereignis.

Zusätzlich gibt es bei bestimmten Barcodes eine Prüfziffer, die vom Scanner mitgeliefert wird; damit kannst Du überprüfen, ob die von Deiner Anwendung gelesenen Daten in sich schlüssig sind.
Anleitungen werden meistens bei den Scannern mitgeliefert, z.B.:
http://www.aisci-plus.de/tt-barcode.htm

Gruß

J.

D.h. das Gerät zum Scannen wird einfach an einen COM Port angeschlossen und kommuniziert somit mit dem Rechner.
Mein Visual Basic Programm kommuniziert wiederum mit der Schnittstelle und kann somit die Zeichen verarbeiten.
Der Scanner wandelt also die Strichcodes in ASCII Zeichen um.

Hast du ein solches Programm schonmal entwickelt?
Ist sowas leicht zu erstellen?

Danke für die Mühe.

D.h. das Gerät zum Scannen wird einfach an einen COM Port
angeschlossen und kommuniziert somit mit dem Rechner.
Mein Visual Basic Programm kommuniziert wiederum mit der
Schnittstelle und kann somit die Zeichen verarbeiten.

Nein, der wird per Tastaturweiche zwischen Tastatur und Tastaturstecker geschaltet, es verhält sich genau so, als würde jemand Zeichen eingeben.

Der Scanner wandelt also die Strichcodes in ASCII Zeichen um.

Ja, die Scannerelektronik macht das, es ist für Dich (fast) völlig transparent. (fast, weil es Sonderzeichen gibt, die den Scanner von einem Modus ins andere versetzen, usw.).

Hast du ein solches Programm schonmal entwickelt?

Ja. Ist leider bei meinem Kunden gebllieben, war aber nichts schlimmes dabei.

Ist sowas leicht zu erstellen?

Ja, wie gesagt.

Danke für die Mühe.

Bitte bitte.

Gruß

J.

Eingaben abfangen
Wie kann ich die Eingaben, die ich über den Scanner bekomme abfangen?
Kannst du mir da Tipps geben, wie ich das in VB realisieren kann?

Danke!

Wie kann ich die Eingaben, die ich über den Scanner bekomme
abfangen?
Kannst du mir da Tipps geben, wie ich das in VB realisieren
kann?

Das Abfangen beschränkt sich auf drei Dinge
a) Erkennen, daß die Eingabe vom Scanner (statt Tastatur) kommt.
b) Überprüfen, ob die Eingabe gültig ist (Prüfsumme o.Ä.)
c) Ersetzen der Scanner-Eingabe durch anwendungsspezifische Daten.

Angenommen, Du erwartest eine Zahl in der Form „12345“. Die Eingabe über Tastatur liefert 12345, da muß man nichts machen.
Der Scanner liefert z.B. *123459*, wobei die Sternchen, die 9 und der Tabulator im Scanner einstellbar sind. Der Tabulator bewirkt, daß das Eingabefeld verlassen wird, somit feuert das Ereignis Validieren (bzw. exit). Du entfernst die Sternchen, die Dir bedeuten, daß die Eingabe abgeschlossen sind, und überprüfst mit dem gleichen Algorithmus, den der Scanner verwendet, ob die Prüfsumme der ersten 5 Ziffern 12345 eine 9 ergibt. Wenn ja, ist Deine Eingabe richtig, und Du ersetzt die eingegebenen Zeichen durch den logischen Ersatz 12345.

Zum Algorithmus: es gibt ein paar davon, sie sind im Barcode sozusagen integriert und für jede Barcodeart anders. Verwendet werden häufig Code 2/5, Code 3/9 und Code 128. Die habe ich jetzt nicht im Kopf, es sind aber relativ simple Prüfsummenverfahren. Die Berechnungsvorschriften werden meistens mit den Scannern mitgeliefert. Wenn Dir das zu blöd ist, kannst Du unter Verzicht auf diese Überprüfung ohne Prüfnummer arbeiten.

Gruß

J.