Autor Beitrag
flohmaus
Hält's aus hier
Beiträge: 7



BeitragVerfasst: So 18.02.18 21:52 
Hallo Entwickler Team,

ich stehe vor einem Problem mit C#

Ich möchte den eingehenden String vom BarCodeleser splitten und den 2. Teil einem Fremdprogramm, das den Fokus hat wieder weitergeben.
Das Programm muss im Hintergrund arbeiten und die eingehenen Barcode überwachen, und das Ergebnis weitergeben.

Barcode-String: 0000123456-123456 (10Stellen-TeileID)
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
string Barcode = "Fahrzeugnummer-123456";
string[] Erg = Regex.Split(Barcode, "-");

foreach (string TeileID in Erg)
{
    Console.WriteLine(TeileID);
}

Wie überwache ich den Barcode-Reader und wie gebe ich das Ergebnis weiter?

Könnt Ihr mir bitte helfen?

Grüsse

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
Moderiert von user profile iconTh69: Titel (leicht) geändert.
Moderiert von user profile iconTh69: Topic aus C# - Die Sprache verschoben am Mo 19.02.2018 um 10:20
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4472
Erhaltene Danke: 921


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: So 18.02.18 22:31 
Wie du Daten aus dem konkreten Barcodeleser bekommst solltest du im Handbuch des Barcodelesers finden. Das kann dir niemand per Ferndiagnose mitteilen nur aufgrund der Feststellung das es ein Barcodeleser ist.
Wir könnten raten das es über die Tastaturschnittstelle geht aber das wäre wie gesagt nur geraten.

Für diesen Beitrag haben gedankt: flohmaus
Palladin007
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1209
Erhaltene Danke: 159

Windows 10 x64 Home Premium
C# (VS 2015 Enterprise)
BeitragVerfasst: So 18.02.18 22:43 
Ich würde jetzt auch auf Tastatur-Schnittstelle tippen.
Der Scanner gibt den Barcode als Eingabe durch, gefolgt durch einen Zeilenumbruch, der das Ende vom Barcode signalisiert.

Problematisch ist das beobachten der Tastatur-Inputs, wenn Du keine Benutzeroberfläche hast, schließlich soll es ja im Hintergrund ausgelesen werden.
Du musst also entweder eine normale Windows-Anwendung (WPF oder WinForms) ohne Oberfläche oder einen Service implementieren, der die Windows-Messages (WinAPI) abhört.

Spontan hab ich das dazu gefunden:
social.msdn.microsof...nputs?forum=netfxbcl

Ist aber nicht gerade das einfachste Thema, die WinAPI ist - naja - unhandlich :D
Ich würde an deiner Stelle als aller erstes nur das mit Tastatur-Abhören testen, ob Du das aus einem Services heraus ans Laufen bekommst.
Wenn das nicht klappt, ist die einfachste Variante eine Benutzeroberfläche mit TextBox. Wenn Du beim TextChanged-Event einen den Enter-Key abfängst, kannst Du sehr einfach den Barcode-Input abgreifen. Das setzt allerdings voraus, dass die TextBox den Fokus hat.

Für diesen Beitrag haben gedankt: flohmaus
flohmaus Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Fr 23.02.18 20:43 
Vielen Dank für die Antworten und Tipps!

Ich versuche den String abzufangen und per TCP weiterzugeben.

Viele Grüße
Peter
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4472
Erhaltene Danke: 921


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Fr 23.02.18 20:54 
Das haben wir verstanden aber du hast uns immer noch nicht mitgeteilt wie die Daten in den PC kommen.
Welche Schnittstelle benutzt dein Barcodeleser? Stellt er sich gegenüber dem PC als Tastatur dar?