LPRINT CHR$(27);"|w";CHR$(45);CHR$(n); 
   n=0 FF走纸命令时钱箱无效
   n=1 钱箱1打开
   n=2 钱箱2打开 
这是Basic命令。
好像是型设备发送字符串CHR$(27);"|w";CHR$(45);CHR$(n); 如果Pos机钱箱是打印口则向并口发送,并口操作的孔件在我那个上找找有的是.
打开钱箱1:CHR$(27);"|w";CHR$(45);CHR$(1); 
打开钱箱1:CHR$(27);"|w";CHR$(45);CHR$(2);
 

解决方案 »

  1.   

    取决于POS所接的接口(RS232 OR 并口),然后向这个口发指令即可啊,和控制类似设备差不多。
      

  2.   

    一般来讲,POS机厂商应该要提供相关二次开发技术参考!我也做过POS机的管理系统!
      

  3.   

    同意楼上的,应该有接口的,或者sdk库什么的,调用不就成了
    不过搂主可能没有,废话,有就不问了,
      

  4.   

    POS机的钱箱是接在打印机上的,那个如何发送这些字符串呢?谁能给出源码?
    SQL5560(最后一朵蝴蝶兰) :你的没错吧,怎么没找到?
      

  5.   

    是并口啊,你知不知道控制字符呢?
    我知道使用汇编的方法写并口,然后把汇编程序内嵌到delphi中
    procedure WritePort(ConByte:byte);
    begin      
       ASM        
         MOV DX, portaddress;        
         MOV AL, ConByte;
         OUT DX, AL;     
       END;
    end;
    ConByte对应为并口的控制字符
    portaddress 为并口地址
    应该能解决你的问题了
      

  6.   

    "27","|w","45","n"就是控制字符序列么?
    哪么去查一下ASSIC码把,把对应ASSIC码传给上边的过程,执行过程就能搞定了
      

  7.   

    很简单啊,
    MOV DX, portaddress;        
    MOV AL, ConByte;
    OUT DX, AL;    
    这些是汇编程序,用来向并口写数据,portaddress是并口地址,到你机器的BIOS里能看到
    是16进制的,同样conbyte也是16进制,是控制字符
      

  8.   

    function StringToFile(mString: string; mFileName: TFileName): Boolean;
    var
      vFile: file of Char;
      I: Integer;
    begin
      {$I-}
      AssignFile(vFile, mFileName);
      Rewrite(vFile);
      for I := 1 to Length(mString) do Write(vFile, mString[I]);
      CloseFile(vFile);
      {$I+}
      Result := (IOResult = 0) and (mFileName <> '');
    end; { StringToFile }StringToFile(#27'|w'#45#1, 'C:\temp.txt');
    StringToFile('type c:\temp.txt > PRN', 'C:\temp.bat');
    WinExec('C:\temp.bat');
      

  9.   

    我做过一个POS程序,打开钱箱的命令只有一句话.
    可惜我是用的VISUAL FOXPRO 来打开的.当然VB 也可以.同样是一句话.
    主要区别于你所使用的连接打印机的型号,你可以到打印机的网页去查找SAMPLE.至少
    BASIC一定有的.DELPHI和BASIC也差不了多少.都是发送一个打印命令而已.
      

  10.   

    回复blue_code(蓝色代码) 
       这个简单,你在论坛里搜索一下Dos,肯定可以找到