Laden...

Serial Klasse Empfang eines Virtuellen Com Port geht nicht.

Erstellt von AxelA vor 10 Jahren Letzter Beitrag vor 10 Jahren 925 Views
AxelA Themenstarter:in
71 Beiträge seit 2008
vor 10 Jahren
Serial Klasse Empfang eines Virtuellen Com Port geht nicht.

Hallo,
ich habe vor etlicher Zeit ein Tool verfasst das von der Seriellen Schnittstelle Daten in Empfang nimmt und anzeigt. Dazu wird Die Serial Klasse Verwendet.
Zuerst werden alle verfügbaren Schnittstellen mit der :
SerialPort.GetPortNames() Methode erfasst.
Die Schnittstelle kann Ausgewählt, Parameter Eingestellt und dann geöffnet werden.
Zum Empfang wird das Event "DataReceived" und die Methode "ReadExisting()" verwendet.

Bislang gab es NIE Probleme mit diesem Tool. Heute aber habe ich ein USB Gerät (Barcodescanner) das über USB am PC Angeschlossen ist. Zu diesem Gerät gibt es einen Treiber, und eine Konfiguration das man den Scanner als USB-Serial betreiben kann. D.H. er bildet eine Virtuelle Schnittstelle ab.

Die Schnittstelle wird im Gerätemanager erkannt.
Selbst mein Programm erkennt die neue Schnittstelle, sie lässt sich ohne Fehler öffnen.
Nur das Event "DataReceived" reagiert nicht. Es wird kein Ereignis ausgelöst, keine Daten empfangen.
Woran könnte das liegen?
Denn mit freeware-Tools aus dem Internet funktioniert das wunderbar, was beweist das Treiber und Scanner funktionieren.

Computer sind das fehlende Bindeglied zwischen dem Boden der Tatsachen und dem Himmel der Perfektion. Daß wir letztem schon viel näher sind, erkennt man am vielen Blau auf den Bildschirmen…

F
10.010 Beiträge seit 2004
vor 10 Jahren

Welchen Port hat denn der Treiber?

T
708 Beiträge seit 2008
vor 10 Jahren

Woran könnte das liegen?

An einer nicht ausreichenden Konfiguration?*Baud-Rate *Parity *Handshake *Stop-Bits *Data-Bits *Request to Sender *Data Terminal Ready

Um nur mal ein paar Möglichkeiten zu nennen.

Vielleicht kann man das ja aus dem Freeware-Programm auslesen. Teste mal die unterschiedlichen Handshakes aus. Bei den anderen Einstellungen müsste zumindest eine Reaktion (falsche Werte) auftreten.