呵呵,上次时间匆忙没有写详细,也有点乱,现在整理了一下。抱歉!!
其实你可以从供应商那里弄到详细的接口支持说明的,不复杂,很容易加进你的软件里的
//////////////////////////////////////////////////////////////////////////////
如:STAR票据打印机接在LPT1口中,驱动指令是:
进制 指令 开钱箱指令
-------------------------------------------------------
十六进制 1B 70 7 CHR(0x1B)+ CHR(0x70)+ CHR(0x7)
十进制 27 112 7 CHR(27)+ CHR(112)+ CHR(7)
ASCII代码 ESC p CHR(27)+'p'+ CHR(7)
CHR()是字符处理函数,即该函数返回结果是字符,如CHR(27)=ESC,CHR(65)='A',也可直接用'A'表示。
则,如果你做的是pos系统软件,就可以在零售单中的开钱箱指令中可输入“CHR(0x1B)+ CHR(0x70)+ CHR(0x7) ,LPT1;0”,也可输入“CHR(27)+ CHR(112)+ CHR(7) ,LPT1;0”或 “CHR(27)+'p'+CHR(07),LPT1;0”
注意:开钱箱指令的格式应是:输入驱动指令(控制符)后,再输入端口名称如LPT1、LPT2、COM1……,再输入延时时间,其中,驱动指令和端口名称之间必须用逗号隔开,端口名称和延时时间之间必须用分号隔开。延时时间是用毫秒计量的,“0”表示不延时,一般都设为0。
再如,EPSON与TP-POS58票据打印机接在LPT1端口,驱动指令是:
进制 指令 开钱箱指令
---------------------------------------------------------------
十六进制 1B 70 0 3C FF CHR(0x1B)+ CHR(0x70)+ CHR(0x0)+CHR(0x3C)+ CHR(0xFF)
十进制 27 112 0 60 255 CHR(27)+ CHR(112)+ CHR(0)+ CHR(60)+ CHR(255)
ASCII代码 ESC p < CHR(27)+ 'p'+ CHR(0)+'<'+ CHR(255)
则,在你的软件零售单中的开钱箱指令输入“CHR(0x1B)+ CHR(0x70)+ CHR(0x0)+CHR(0x3C)+ CHR(0xFF),LPT1;0”,或“CHR(27)+ CHR(112)+ CHR(0)+ CHR(60)+ CHR(255),LPT1;0”,或“CHR(27) +'p'+ CHR(0)+'<'+ CHR(255),LPT1;0”。这样,就可以在你做的软件的零售单中使用钱箱了。