delphi控制POS打印机

delphi控制POS打印机

RPrinter为TextFile类型;
SContent为TStringList类型。

// 建立打印连接并打印数据
Assignfile(RPrinter,'lpt1'); // 设置打印机
Rewrite(RPrinter); // 准备写文件
Writeln(RPrinter,chr($b)+chr(27)+'K'+chr(40)); // 向后倒纸!
...

for i := 0 to SContent.Count - 1 do
Writeln(RPrinter,SContent.strings[i]);

Writeln(RPrinter,chr($b)+chr(27)+'J'+chr(140)); // 向前进纸

CloseFile(RPrinter); // 关闭打印机,结束打印
SContent.Free; // 释放字符串列表

Assignfile(RPrinter,'lpt1'); // 设置打印机
Rewrite(RPrinter); // 准备写文件
Writeln(RPrinter,chr(27)+'p'+'m'+(后面两个看起来像是参数) t1 t2); // 开钱箱
CloseFile(RPrinter); // 关闭打印机,结束打印


开 钱 箱控制命令(该命令可同时开启两个钱箱,实际操作只需开启一个)
1、PK模式驱动钱箱指令
  ESC | r F9 M n1 n2
  M =0 代表一个钱箱 n代表脉冲宽度 n1 =40--50 之间
  M =1 代表两个钱箱 n2 =120--150之间
  QBASIC下编程
  LPRINT CHR$(27);"|";"r";CHR$(249);CHR$(0); CHR$(50);CHR$(150)
2、POS模式驱动钱箱指令
  ESC r p M n1 n2
  M =0 代表一个钱箱 n代表脉冲宽度 n1 =40--50 之间
  M =1 代表两个钱箱 n2 =120--150之间
  QBASIC下编程   LPRINT CHR$(27);CHR$(112);CHR$ (0);CHR$ (50);CHR$(200)
3、BS300K可同时打开两个钱箱,当接 2、4 时钱箱1打开,接4、5时钱箱2打开
4、设定在windows下自动开钱箱功能
   LPRINT CHR$(27);"|w";CHR$(45);CHR$(n);
   n=0 FF走纸命令时钱箱无效
   n=1 钱箱1打开
   n=2 钱箱2打开

原文地址:https://www.cnblogs.com/jiangyuxuan/p/1393300.html