如何在pb中用EPSON TM300 打开钱箱,谢谢...

wsv 2002-03-08 02:39:56
首先非常感谢您移目此处:

我们在超市结帐时经常看到的小票打印机(epson tm300),它后面有一dk口,用来联接、打开钱箱用的,在vb中很容易打开,可在pb中我感到很费事,请您指点。
打印机说明上说如下可以打开钱箱:
set Printer fontname to "control"
Type "A" to open drawer
释:设置打印字体为"control",发关'a'到打印机。

我按照上面在pb中编写如下:
long Job
Job = PrintOpen()
PrintDefineFont(Job, 1, 'control', &
0, 0, Default!, Decorative!, FALSE, FALSE)
PrintSetFont(Job, 1)
//Print(Job,'a') 或者
PrintSend(Job,'A')
PrintClose(Job)


执行以上时,打印机打印出字符 A ,钱箱就是没反映,联接全部正常(手头上有一个很老的 C 语言编的收银系统,用之可将钱箱打开)。
请您指教我的编程是不是搞错了。
THANK.

注:以上编程好像打印机没有受控制,而是只收到了一个打印的命令?
...全文
101 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wsv 2002-03-09
  • 打赏
  • 举报
回复
yling(画无雨) 你好,请问你用tm210 打开过吗?
fzymr 2002-03-09
  • 打赏
  • 举报
回复
控制码的发送用printsend,dajianshi(大剑师) 写的很清楚了
控制码是'A',查一下它的asc码,假如为65,这样写代码
dajianshi(大剑师) 的代码第二行改为
printsend(job,char(27) + char(65))
yling 2002-03-09
  • 打赏
  • 举报
回复
利用filewrite('prn','control string')直接写端口
但发送char(0)的时候没有成功
我用过tm210
wsv 2002-03-09
  • 打赏
  • 举报
回复
请问 zhanwei(詹维) 到底怎样发送控制码呢?打印机说明上说明发送控制码'A'.
佣工7001 2002-03-08
  • 打赏
  • 举报
回复
你把这两行
//Print(Job,'a') 或者
PrintSend(Job,'A')
改成
Print(Job,'A')
//PrintSend(Job,'A')
试试
另外我看应该查查打印机的手册,可能是设置打印机的硬字库,因为windows中没有control字体
我认为应该是如下过程
job = printOpen();
printsend(job,chr(27)+硬字库设置命令);
printsend(job,'A');
printClose(job);
zhanwei 2002-03-08
  • 打赏
  • 举报
回复
查一下开钱箱的控制码,直接发送控制码!

401

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 非技术版
社区管理员
  • 非技术版社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧