Abfangen von Daten, die an einen Windows-Drucker gesendet wurden (mit RedMon)

8

Ich muss Daten, die an einen ESC / POS-Drucker unter Windows gesendet werden, abfangen und analysieren.

Ich wollte also die Daten im Klartext abrufen, damit ich die Informationen, die an den Drucker gesendet werden, extrahieren und verstehen kann.

Momentan habe ich versucht, RedMon zu verwenden, um den Datenstrom an den Druckerport zu senden. Die gesendeten Daten haben jedoch die Form von Rastergrafiken, d. H. Zu druckenden Punkten, die in ESC / POS-Befehle eingebettet sind.

Also habe ich mich gefragt, ob mir jemand vorschlagen kann, wie ich die Druckdaten im Textformat bekommen kann, um daraus einige Informationen extrahieren zu können.

    
mabicha 10.07.2012, 19:10
quelle

3 Antworten

10

Die Daten, die an einen ESC / POS-Drucker gesendet werden IS Rasterdaten, die mit ESC / POS-Befehlen eingebettet sind. Dies erzeugt der ESC / POS-Druckertreiber über seine Eingabe. Und das hat RedMon für dich gefangen.

Scheint, dass Sie die Eingabe sehen möchten, die an den Druckertreiber gesendet wurde . Das heißt, Sie müssen herausfinden, welche Anwendungen den Drucker verwenden, und Sie müssen abfangen, was beim Druckertreiber ankommt.

Sie sagen nicht, ob Sie Ihre Überwachung in einer "Live" -Umgebung einrichten möchten oder nur für temporäre Tests. Wenn Sie vorübergehend testen möchten, können Sie alternativ die folgenden Schritte ausführen:

  1. Pausiere die Druckerwarteschlange (oberer Screenshot, unten).
  2. Optional: Ändern Sie den Treiber von ESC / POS zu PostScript oder Microsoft XPS. Tun Sie dies auf der gleichen Registerkarte "Erweitert" im Dialogfeld Druckereigenschaften wie oben erwähnt. (unterer Screenshot rechts, unten).
  3. Drucken.
  4. Abrufen der Spooldatei, die im Spool-Verzeichnis wartet. Unter Windows 8 ist dies standardmäßig C: \ Windows \ System32 \ spool \ DRUCKER . Die Spooldatei heißt NNNNN.spl , wobei NNNNN die Nummer des aktuellen Druckjobs ist.
  5. Analysieren Sie die PostScript- oder XPS-Daten.

Sehen Sie sich diese 3 Screenshots an:

Es wäre jedoch viel einfacher (anstatt RedMon zu verwenden), wenn Sie ...

  • ... aktivieren Sie einfach die Druckertreibereinstellungen mit dem Namen "Gedruckte Dokumente behalten" : Gehen Sie zu Eigenschaften der Druckwarteschlange = & gt; Wählen Sie die Registerkarte "Erweitert" = & gt; Aktivieren Sie die entsprechende Checkbox (siehe oben links Screenshot);

  • ... fisch spooled printjob aus dem windows print spool-verzeichnis;

  • ... analysiere deine NNNNN.spl Datei:

    • Unter Windows 8 wird dies eine XPS-Datei sein. Benennen Sie es in NNNNN.xps um, und Sie können es mit dem integrierten XPS-Viewer öffnen.

    • In früheren Versionen von Windows wird NNNNN.spl das Dateiformat des jeweiligen Druckertreibers haben (PostScript für PostScript-Treiber, XPS für Microsoft XPS-Drucker, ESC / POS für Ihren Drucker, ...). Benennen Sie es entsprechend um und öffnen Sie es in XPS oder PostScript-Viewer.

Kurt Pfeifle 30.09.2012, 08:32
quelle
0

Sie können Epson POS-Drucker in den Debug-Modus versetzen, in dem sie einen HEX-Dump der eingehenden Daten ausdrucken. Siehe Seite 88 dieses PDF: Ссылка

Um dies zu verstehen, können Sie das Epson ESC / POS SDK erhalten, wenn Sie sich mit den folgenden Bedingungen einverstanden erklären: Ссылка

    
Teddy 06.10.2012 02:56
quelle
0

Wenn Sie nur erfassen möchten, können Sie einen TCP / IP-Druckeranschluss erstellen, der auf die IP einer Arbeitsstation verweist und mein vclpdcap-Tool ausführt. Es überwacht 9100 oder 515 (RAW oder LPR) und erfasst und schreibt die Daten in Datei.

Sehen Sie sich hier an, wenn Sie weitere Anweisungen benötigen, lassen Sie es mich wissen.

Ссылка

    
Douglas Anderson 05.10.2012 01:41
quelle