H HubHub Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #1 我用EPSON TM_210票据打印机的控制命令(#27+''),无论如何打印机都不受控制, 我可以正常发送字符串到打印机.
H HubHub Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #2 为什么都不讲?有才不外露?分太少?我可只有这么多分了
H HubHub Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #3 procedure writePrn(port,str:stirng); port:为打印口 str:为控制码 var prn: TextFile; begin Assignfile(prn,port); // 如: 'LPT1' Rewrite(prn); Writeln(prn, str); //控制码 如:#27+'@' CloseFile(prn); end;
procedure writePrn(port,str:stirng); port:为打印口 str:为控制码 var prn: TextFile; begin Assignfile(prn,port); // 如: 'LPT1' Rewrite(prn); Writeln(prn, str); //控制码 如:#27+'@' CloseFile(prn); end;
H HubHub Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #4 不知道为什么就是不得到预期目的。还有什么问题吗? 请各位大虾多多帮忙!!!!!!
H Huzzz Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #5 应该没有问题吧。你在DOS下试试。另外看看它的指令说明,有没有需要特殊 处理的,如复位后需要激活一些功能。 另外要注意打印机的接收速度,有些古老的打印机由于工作频率低,比PC计算 机要慢得多,可能需要延时。如: Writeln(prn, #27); //控制码 复位 Sleep(10); //延时10ms Writeln(prn, '@'); Sleep(10); //延时10ms .... 还有要弄清楚打印机接收指令和数据是用电平中断还是脉冲中断。
应该没有问题吧。你在DOS下试试。另外看看它的指令说明,有没有需要特殊 处理的,如复位后需要激活一些功能。 另外要注意打印机的接收速度,有些古老的打印机由于工作频率低,比PC计算 机要慢得多,可能需要延时。如: Writeln(prn, #27); //控制码 复位 Sleep(10); //延时10ms Writeln(prn, '@'); Sleep(10); //延时10ms .... 还有要弄清楚打印机接收指令和数据是用电平中断还是脉冲中断。
H Huzzz Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #7 > 弄清楚打印机接收指令和数据是用电平中断还是脉冲中断 然后在PC的CMOS中选择使用哪种LPT,是ECP之类的,我不记得了,你去找书看看吧。 现在的CMOS都有类似配置,如果类型不对,那是肯定不行的。 不过你既然能发送字符打印,好像以上问题都不存在:( 白说了。 你还是看说明书、找EPSON的技术支持吧,我不行了,我想哭。
> 弄清楚打印机接收指令和数据是用电平中断还是脉冲中断 然后在PC的CMOS中选择使用哪种LPT,是ECP之类的,我不记得了,你去找书看看吧。 现在的CMOS都有类似配置,如果类型不对,那是肯定不行的。 不过你既然能发送字符打印,好像以上问题都不存在:( 白说了。 你还是看说明书、找EPSON的技术支持吧,我不行了,我想哭。
阿 阿蛮 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-13 #9 我在前几个月写过一个这样的程序,就因为不想打#13,而用writeln,结果就是不行, 弄了快半个月,就是没想到这这个原因,我都快疯了,后来把爱普生的技术员从北京请 到西安,可就在技术员在来的路上我就把writeln换成write,结果就成了,可怜的北京 技术员到西安后只能是吃和喝,还好不是我的钱。呵呵
我在前几个月写过一个这样的程序,就因为不想打#13,而用writeln,结果就是不行, 弄了快半个月,就是没想到这这个原因,我都快疯了,后来把爱普生的技术员从北京请 到西安,可就在技术员在来的路上我就把writeln换成write,结果就成了,可怜的北京 技术员到西安后只能是吃和喝,还好不是我的钱。呵呵
H HubHub Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-14 #10 多谢二位的帮助,我又试一下,结果是: 我试着用过write 打印机好象什么都没收到。 用write 发字串时,要再发一个才打印 如:botton1: write(prn,'kkkkk'); botton2: write(prn,#27'@'); botton3: write(prn,#27+'e'+'6'); //向后退6行 我按botton1,没动静, 我按botton2,输出kkkkk, 按n次botton2 botton3 都没动静
多谢二位的帮助,我又试一下,结果是: 我试着用过write 打印机好象什么都没收到。 用write 发字串时,要再发一个才打印 如:botton1: write(prn,'kkkkk'); botton2: write(prn,#27'@'); botton3: write(prn,#27+'e'+'6'); //向后退6行 我按botton1,没动静, 我按botton2,输出kkkkk, 按n次botton2 botton3 都没动静
阿 阿蛮 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-14 #11 呵呵,请把你的打印机驱动程序下掉。 #27'@'是初始化打印机。 我的资料上没有#27+'e'的,所以不知道。(我的是爱普生88II,只有前进,没有后退)
2 203010 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-14 #12 要用Escape通过Passthrough的方式传送到Printer才行,我的MSDN有问题 你自己查一下,我记得有个例子,用MSDN的搜索Passthrough,查到how to ...