MSCommのOutputについて

タグの編集
投稿者   (社会人) 投稿日時 2015/11/28 11:27:24
フォームのボタンを押した時に、COMポートよりプリンターに印字しています。
ソースがあり正常に動く状態ですが、自分が作成したものではなく下記の部分が何を行っているかわからない状態です。
"PRT"で印刷される事しかわかりません。
それぞれ何を意味しているものでしょうか?

環境はVB6です。

 MSComm1.Output = "EST(135)" + vbCrLf
 MSComm1.Output = "FMT(1, 45,7, 0, 0, 1)" + vbCrLf
 MSComm1.Output = "SFM(1)" + vbCrLf
 MSComm1.Output = "TMG(2.5)" + vbCrLf
 MSComm1.Output = "LMG(4)" + vbCrLf
 MSComm1.Output = "PIT(" & "-6d" & ")" + vbCrLf
 MSComm1.Output = "CFL(10,3,0.3,4,1,1)" + vbCrLf
 MSComm1.Output = "ACL()" + vbCrLf
 MSComm1.Output = "DAT(10,"TEST")" + vbCrLf
 MSComm1.Output = "PRT(1, 0, 1)" + vbCrLf
 MSComm1.Output = "EST(128)" + vbCrLf
 MSComm1.Output = "EST(1)" + vbCrLf
投稿者 daive  (社会人) 投稿日時 2015/11/28 13:54:45
掲示だけの事柄では、
該当メーカーの関係者、使った事のある方以外は、
回答しづらいと思います。
1.プリンタのメーカー、型番位は掲示しましょう。
  不明であれば、手掛りになるような事柄を
  掲示しましょう。(ラベルプリンタ、バーコードプリンタ、xx専用プリンタなど)
2.今後もメンテナンスを行うのであれば、
  当該プリンタの、スペック資料、プリンタ用のコマンドリファレンス、
  制御コード表の様な資料を入手しておきましょう。
  大手メーカーの場合でも、廃版で資料入手不可になったりします。
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2015/11/29 14:26:04
> ソースがあり正常に動く状態ですが
ダウト。少なくとも
> MSComm1.Output = "DAT(10,"TEST")" + vbCrLf
の部分は文法エラーになると思いますよ。

それに、改行文字を + で繋いでいる割には、
> MSComm1.Output = "PIT(" & "-6d" & ")" + vbCrLf
の行では & での連結が併用されている(しかも連結処理する意味がない)など、
コードに一貫性が無いものも気になります。本当に元の処理と同一なのでしょうか?


それはさておき、お使いのプリンタ言語は何でしょうか?

MSComm をバイナリモードではなくテキストモードで利用していることから、
少なくとも 201PL や ESC/P 系統の言語でないことは読み取れたのですが、
プリンタ言語は専門外なので、コマンドを見ても判断が付きませんでした。