delphi POS – 通过USB Printer打开钱抽屉  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi POS – 通过USB Printer打开钱抽屉


procedure USBOpenCashDrawer(PrinterName: String);
var
  // use winspool
  Handle, hDeviceMode: THandle;
  N: DWORD;
  DocInfo1: TDocInfo1;
  Device, Driver, Port: array [0 .. 255] of char;
  ThePrinter: string;
begin
  ThePrinter := PrinterName;
  Code := chr(27) + chr(64)+ chr(27) + chr(112) + chr(0) + chr(50) + chr(200);
 
  //superlevin.ifengyuan.tw/tag/printer/">Printer.PrinterIndex := Printer.Printers.Indexof(ThePrinter);
  Printer.GetPrinter(Device, Driver, Port, hDeviceMode);
  PrinterName := Format('%s', [Device]);
  if not WinSpool.OpenPrinter(PChar(PrinterName), Handle, nil) then
  begin
   // ShowMessage('Error : ' + IntToStr(GetLastError));
    Exit;
  end;
  with DocInfo1 do
  begin
    pDocName := 'Test';
    pOutputFile := nil;
    pDataType := 'RAW';
  end;
 
  WinSpool.StartDocPrinter(Handle, 1, @DocInfo1);
  WinSpool.StartPagePrinter(Handle);
  WinSpool.WritePrinter(Handle, PAnsiChar(Code), Length(Code), N);
  WinSpool.EndPagePrinter(Handle);
  WinSpool.EndDocPrinter(Handle);
  WinSpool.ClosePrinter(Handle);
 
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.16233706474304 seconds