8

I need to intercept data being sent to a ESC/POS printer on Windows and analyze it.

So I wanted to get the data in plain text, so that I can extract and make sense of information being sent to the printer.

Currently, I have tried using RedMon to get the data stream being sent to the printer port. But the data being sent is in the form of raster graphics i.e. dots to be printed, embedded within ESC/POS commands.

So I was wondering if somebody can suggest me on how can I get the print data in text format so as to be able to extract some information from it.

4

3 に答える 3

11

ESC /POS プリンターに送信されるデータは、ESC/POS コマンドが埋め込まれたラスター データです。これは、ESC/POS プリンター ドライバーがその入力から生成するものです。そして、それが RedMon がキャッチしたものです。

プリンタードライバーに送信された入力を見たいようです。つまり、どのアプリケーションがプリンターを使用しているかを調べ、プリンター ドライバーに到達するものをインターセプトする必要があります。

インターセプトを「ライブ」環境でセットアップしたいのか、それとも一時的なテストのためだけなのかは言いません。一時的にテストする場合は、代わりに次の手順を実行できます。

  1. 印刷キューを一時停止します (上のスクリーンショット、下)。
  2. オプション: ドライバを ESC/POS から、たとえば PostScript または Microsoft XPS に変更します。これは、前述のプリンター プロパティ ダイアログの [詳細設定] タブで行います。(右下のスクリーンショット、下)。
  3. 印刷します。
  4. スプールディレクトリで待機しているスプールファイルを取得します。Windows 8 では、これはデフォルトでC:\Windows\System32\spool\PRINTERSです。スプールファイルの名前NNNNN.splは、NNNNN が現在の印刷ジョブの番号です。
  5. PostScript または XPS データを分析します。

これらの 3 つのスクリーンショットを参照してください。

  


ただし、次の場合は (RedMon を使用する代わりに) はるかに簡単になります...

  • ... 「印刷されたドキュメントを保持する」と呼ばれるプリンタードライバー設定を有効にするだけです。印刷キューのプロパティに移動します=>「詳細」タブを選択します=>それぞれのチェックボックスを有効にします(上の左のスクリーンショットを参照);

  • ...fish は、Windows 印刷スプール ディレクトリからスプールされた printjob を実行します。

  • NNNNN.spl...ファイルを分析します。

    • Windows 8 では、これは XPS ファイルになります。名前を NNNNN.xps に変更すると、組み込みの XPS ビューアーで開くことができます。

    • 以前のバージョンの Windows では、NNNNN.splそれぞれのプリンター ドライバーのファイル形式になります (PostScript ドライバーの場合は PostScript、Microsoft XPS プリンターの場合は XPS、プリンターの場合は ESC/POS など)。それに応じて名前を変更し、XPS または PostScript ビューアーで開きます。

于 2012-09-30T08:32:10.440 に答える
2

キャプチャするだけの場合は、ワークステーションの IP を指す TCP/IP プリンター ポートを作成し、vclpdcap ツールを実行できます。9100 または 515 (RAW または LPR) を監視し、データをキャプチャしてファイルに書き込みます。

こちらをご覧ください。さらに詳しい説明が必要な場合はお知らせください。

更新: http://www.ballisticecho.com/articles/print-capture-lpd-9100

于 2012-10-05T01:41:28.580 に答える
0

Epson POSプリンターをデバッグモードにして、受信データのHEXダンプを出力することができます。このPDFの88ページを参照してください:http ://www.pos.epson.com/epsonexpertTSG/Templates/POS_Developers_Details.aspx?NRMODE = Published&NRORIGINALURL =%2fdevelopers%2ftechresdetails%2ehtm%3fproductpk%3d642&NRNODEGUID =%7b934F5A6D-E01 -648C1EC68047%7d&NRCACHEHINT = NoModifyGuest&productpk = 642

これを理解するために、サインアップして条件に同意すると、Epson ESC / POS SDKを入手できます:https ://www.epsonexpert.com/ee/prelogin/registration.htm

于 2012-10-06T02:56:09.983 に答える