![]() |
Drucker Daten abfangen
Moin Moin,
Ich besitze einen Münzzähler inklusive der Option die Ergebnisse über ein RJ12 Anschluss an einem Bondrucker ausdrucken zu lassen. Das funktioniert soweit auch gut. Das Gerät ist von Safescan. Ich würde nun das gedruckte gerne am PC auslesen und verarbeiten. Kann ich das Signal welches an den Drucker geht auch direkt an den PC senden? Danke |
AW: Drucker Daten abfangen
Hmm..
ein bischen google... Also, ohne Adapter und zusätzliche Hardware geht es nicht, denn der PC hat kein RJ12 und kann somit nicht angeschlossen werden. Hier mal ein paar Links: ![]() ![]() Soweit ich es sehen konnte arbeitet die RJ12 Druckerschnittstelle wie eine TTY Serielle, somit ist noch etwas wir ein ComServer oder Medienkonverter notwendig, welcher das TTY Signal z.B. auf ein RS232 (PC) umlegt oder gleich auf Ethernet... |
AW: Drucker Daten abfangen
Naja, es kommt wahrscheinlich darauf an, wie das Programm den Drucker ansteuert. Wenn es den Comport direkt ansteuert, dann mußt du wie angesprochen auf Hardware oder vermutlich auch Softwarelösungen zugreifen. Wenn das Programm gewöhnlich über einen installierten Windowsdrucker, sprich ein Druckertreiber noch involviert ist, druckt, dann konnte man in Windowsdruckerspooler es so einstellen, dass die gespoolten Druckdateien nicht gleich gelöscht werden. Du müsstet nur noch in deinem Programm das die gespoolten Dateien in dem Verzeichnis abgreifen.
Lg, jus |
AW: Drucker Daten abfangen
Hm..
Zitat:
Da dieser Zähler nur nen RJ12 für per dieser Schnittstelle angeschlossene Drucker hat, muss somit zunächst diese Schnittstelle auf eine im PC verbaute 'aufgerüstet' werden. Also Mümzzähler (RJ12) -> MedienConverter (z.B. auf RS232) -> PC (mit RS232) -> Software auf PC, welche an RS232 lauscht und die ASCII-Druckdaten entgegen nimmt. RS232, weil dort die Ähnlichkeit zur RJ12 am nächsten ist. Alternativ könnte er auch ComServer von Moxa/W&T verwenden, welche statt eines RS232 anschlusses gleich eine TTY mitbringen, dise kommt am nächsten an die RJ12 heran kommt. Dann würde dieser ComServer per Ethernet am PC angeschlossen. Nur ob er die 100-300€ für einen solchen Medienconverter ausgeben möchte... |
AW: Drucker Daten abfangen
Also ich habe mir einen Adapter von RJ12 auf USB besorgt und diesen einfach an meinen PC angeschlossen um zu schauen was für Daten ankommen.
Mit einem Tool habe ich mir die Raw Daten vom USB Port angeschaut und er scheint die Informationen im Klartext auszugeben.
Delphi-Quellcode:
Wenn ich diese Werte nun von Hex auf Text umwandel kommt genau das dabei raus was ich
0d 0a 44 65 6e 6f 20 20 20 20 20 20 20 50 63 73
20 20 20 20 56 61 6c 75 65 20 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 45 75 72 6f 35 20 20 20 20 20 20 20 20 31 20 20 20 20 20 20 20 20 35 0d 0a 45 75 72 6f 31 30 20 20 20 20 20 20 20 31 20 20 20 20 20 20 20 31 30 0d 0a 45 75 72 6f 32 30 20 20 20 20 20 20 20 31 20 20 20 20 20 20 20 32 30 0d 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 33 20 20 20 20 20 20 20 33 35 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a 0d 0a benötige.
Delphi-Quellcode:
Ich habe herausgefunden das ich mittels JvHIDController Daten über USB empfangen kann,
Deno Pcs Value
------------------------ Euro5 1 5 Euro10 1 10 Euro20 1 20 ------------------------ 3 35 allerdings finde ich keine Vendor oder Produkt ID. Wie gehe ich da weiter vor? |
AW: Drucker Daten abfangen
Zitat:
|
AW: Drucker Daten abfangen
Hmm..
Die meisten Seriell auf USB Adapter werden unter Windows als Serielle (COMx) Schnittstelle installiert und dann kannst Du mit einer ComPort-Komponente darauf zugreifen und auslesen. Schau mal im Gerätemanager, ob da nen weiterer COM-Port installiert ist.. Es gibt diverse Komponenten für Delphi und ComPort, einfach mal googeln... |
AW: Drucker Daten abfangen
So ich habe mir die Comport Komponente installiert. COMPORT 4 geöffnet und mittels folgendem Code alle empfangenen Daten in ein Memo ausgegeben.
Delphi-Quellcode:
Das funktioniert alles und ich bekomme auch die gewünschten Informationen. Allerdings nicht
var Output:string;
begin ComPort1.ReadStr(Output,Count); memo1.Lines.Add(Output); end; in Hex Werten, sondern direkt in Textform, der dann aber vollkommen verunstaltet wurde. Zum Beispiel:
Delphi-Quellcode:
Wie bekomme ich da Ordnung rein?
Den
o Pcs Value ----- ------- --------- --- Eur o5 1 5 Euro10 1 10 Euro 20 1 20 ------ -------- ------ ---- 3 35 |
AW: Drucker Daten abfangen
Du bekommst die Daten als Bytes geliefert.
Du verlangst von der Komponente dir diese Bytes als Text zu interpretieren und dir zurückzugeben. Egal ob jetzt als Text oder als HEX, es ist eine Frage der Darstellung und nicht der Daten. |
AW: Drucker Daten abfangen
Sehr geil, danke an alle!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz