AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

QR Code Schreiben - Lesen

Ein Thema von juniorA · begonnen am 14. Feb 2017 · letzter Beitrag vom 23. Feb 2017
Antwort Antwort
Seite 1 von 2  1 2   
juniorA

Registriert seit: 14. Sep 2011
112 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 08:28
Geht das?

Ich will in einen Projekt eine begrenzte Anzahl von ASC Zeichen in QR Code wandeln. Dieser Code soll dann auf ein Etikett gedruckt werden, welches auf ein Werkstück geklebt wird. Anschließend soll über ein Scanner der QR Code wieder einlesen und auswertet werden. Hat dort schon jemand Erfahrung und gibt es zum Schreiben und Lesen des QR Code schon fertige Sachen? Muss gestehen ich bin auf diesen recht grün. Mit dem Drucken der Label, dass sollte ich ja noch im Griff bekommen aber bei der Frage wie ich z.B. den Handscanner in mein Programm einbinde, ich an seine Daten rankomme da stehe ich aktuell noch auf dem Schlauch.
  Mit Zitat antworten Zitat
Towmuz

Registriert seit: 21. Sep 2016
Ort: Minden
127 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

AW: QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 08:51
Moin,

einfach mal die Sufu benutzen, gibt´s sogar hier im Forum tqrbarcode

Wenn du einen Handscanner hast, wirst du dir wohl ein kleines Programm schreiben müssen, das dann auf dem Handscanner läuft und die Daten an dem Ort deiner Wahl einfügt.
Kommt dann auf das OS des Handscanners an, mit welcher Sprache du das Programm schreiben kannst oder ob das über eine RDP Verbindung läuft usw.
Thomas
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.610 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 09:40
Du solltest dir für dein Vorhaben mal die Zint Bibliothek anschauen. Die umfasst sehr viele Arten von QR-Codes die du damit sehr schnell und einfach erzeugen lassen kannst.

Die Codes jetzt auszudrucken sollte dann ja das kleinere Problem darstellen.

PS: Das ist das falsche Unterforum.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 09:41
Für das Drucken gibt es mittlerweile viele, auch kostenfreie, Lösungen. Für das Lesen der Daten ist es am einfachsten, einen HID Scanner zu verwenden. Der wird über USB angeschlossen und simuliert die Eingabe der Daten über die Tastatur.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.126 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 09:56
QRCode erzeugen ist eigentlich kein Problem...

Klar kann man die fertigen Sachen nehmen. Ansonsten ist eine Umstellung der vorhandenen C# Sourcen ein Tag Arbeit.

Lese ist schon aufwendiger... Aber das übernimmt ja i.d.R. Hardware und du bekommst den fertigen Code als Tastatureingabe...

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.100 Beiträge
 
Delphi 12 Athens
 
#6

AW: QR Code Schreiben - Lesen

  Alt 14. Feb 2017, 11:06
Mal an einem Beispiel, auch wenn kein QRCode.

www.imagesinfo.com/products/barcode-reader/
ImagesInfo Barcode Reader Control (BarcodeR.ocx)
* ActiveX TypeLib importiert und BARCODERLib_TLB generiert
* laut Doku die nötigenen Aufrufe in 'ner Testanwendung zusammengeschrieben und bissl getestet (das war der größte Teil, der paartägigen Arbeit, samt Parameteroptimierungen für unsere Bildgrößen und die Scandauer)
* 'ne kleine Komponente/Funktion drumrum, geht aber auch ohne (Image rein > Liste mit Barcodes raus)
Delphi-Quellcode:
// Kapselung/Ansteuerung der Komponenten zum Suchen der Barcodes
procedure ReadBarcode(var Codes: TBarcodeList; Source: TGraphic; Filter: TBarcodeFilter = nil;
  BarTypes: TZBSymbolTypes = []; CheckDigit: Boolean = BarcodeCheckDigit; Density: Integer = BarcodeDensity);

// Kommaseparierte Liste der gefundenen Barcodes
function GetAllBarcodes(const Codes: TBarcodeList): string;
* fertig und nun nur noch ein kleiner Aufruf überall im Programm


Entweder gibt es schon eine fertige Delphi-Komponente, aber ansonsten läuft das grundsätzlich in etwa überall so ab, egal ob ActiveX oder direkt die DLL angesprochen.
Bei ActiveX übersetzt Delphi für einen die API-Aufrufe, was man bei der DLL selber machen müsste, falls es keine Delphi-PAS vom Hersteller oder Anderen gibt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (14. Feb 2017 um 11:12 Uhr)
  Mit Zitat antworten Zitat
juniorA

Registriert seit: 14. Sep 2011
112 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: QR Code Schreiben - Lesen

  Alt 21. Feb 2017, 09:59
Danke für die Info.
Bin jetzt schon ein ganzes Stück weitergekommen.
Habe jetzt mit Hilfe des Tools Daten als QR Code geschrieben, die dann auf ein Label gedruckt und bekomme sie auch eingelesen. Der Scanne ist über USB angeschlossen und schreibt mir das Ergebnis als Tastureingabe zurück. Aktuell suche ich noch nach einer Möglichkeit mitzubekommen, wann der Scanner eine Information geliefert hat und die Information dann in eine Datei umzuleiten.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.100 Beiträge
 
Delphi 12 Athens
 
#8

AW: QR Code Schreiben - Lesen

  Alt 21. Feb 2017, 10:24
Ich weiß jetzt nicht, was du für einen Scanner hast.
Die Meisten lassen sich z.B. per COM-Port oder über 'ne DLL ansteuern. Und bei USB wird dafür ein virtueller COM-Port installiert.
Dann muß man die nur noch umstellen, dass sie eben keine Tastatur-Emulation verwenden und bekommt über die Schnittstelle direkt das gewünschte Ergebnis geliefert.

Wir haben Mehrere verschiedene Reader bei Kunden im Einsatz. (aber aktuell nur 2D-Codes)
Da hab ich die TComPort+TComLed-Lib nochmal in ner eigenen Klasse gekapselt, mit Setupdialog, Barcode-Filter, Callbackevent "OnBarcode" usw.
und nach erfolgreicher Verarbeitung im Programm wird noch ein "Beep" an den Reader gesendet, für das Feedback an den Benutzer.
Bzw. bei länderer Verarbeitungsdauer wird der Reader in den Standby versetzt, damit zwischendurch nicht Neues gescannt werden kann.
Und natürlich das An-/Abschalten des Readers und die Steuerung der StatusLED am Reader, beim Betreten/Verlassen der Module im Programm.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (21. Feb 2017 um 10:34 Uhr)
  Mit Zitat antworten Zitat
juniorA

Registriert seit: 14. Sep 2011
112 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

AW: QR Code Schreiben - Lesen

  Alt 21. Feb 2017, 10:57
Danke für das schnelle Feedback,

Bei den Reader handelt es sich um einen NETUM Handheld Made in China.
Die Sache mit den virtuellen COM Port hört sich für mich als Einsteiger gewaltig an, da ich da keine Erfahrung habe. Auf einer anderen Seite fand ich auch ein ganz andere witzige Lösung. Die sah so aus, dass auf das Label am Anfang und Ende eine Kennung gedruckt wird. Wenn am Tasturpuffer die Kennung ankommt wird die ganze Eingabe umgeleitet und mit der Endekennung zurückgestellt. Ist für mich aber auch Neuland und ich müsste mir soetwas erst bauen. Hat da schon jemand ein Beispiel?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.100 Beiträge
 
Delphi 12 Athens
 
#10

AW: QR Code Schreiben - Lesen

  Alt 21. Feb 2017, 12:03
AssignFile, TFileStream, oder halt MSDN-Library durchsuchenCreateFile auf die Datei 'COM1' und schon hat man Zugriff auf den COM-Port 1.
Dann mit Read und Write kann man Befehle an den Reader senden oder eben den Barcode und Statussignale auslesen. (meistens gefolgt/abschlossen von eimem Zeilenumbruch #13)

Komponenten ala Bei Google suchenTComPort stellen einem da schönere/einfachere/bessere Möglichkeiten bereit.
Vorallem liest der im Hintergrund über einen Thread permanent den Port aus und sagt dir, wenn neue Daten reinkommen.
Und er kapselt die ControllAPIs bezüglich BAUD-Rate usw.
https://msdn.microsoft.com/de-de/lib.../aa363201.aspx

Ohne eigenes Setting werden die Standard-Einstellungen des Windows für diesen COM-Port verwendet.


Den Reader und die Befehle kann man also auch problemlos mit einem Terminal Programm testen.
Bei Google suchencom terminal
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (21. Feb 2017 um 12:06 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 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