#ifndef YkPosdll #define YkPosdll typedef int (__stdcall *CallBack)(unsigned char pParam); #ifdef __cplusplus extern "C" { #endif ///串口 #define COM1 1 #define COM2 2 #define COM3 3 #define COM4 4 #define COM5 5 #define COM6 6 #define COM7 7 #define COM8 8 #define COM9 9 #define COM10 10 ///并口 #define LPT1 11 #define LPT2 12 ///USB 口 #define USB 13 ///(有线或无线WIFI)网络 打印机 #define NET 14 //函数功能:连接打印机设备 //参数: iport -- 设备通信接口号,如COM1 - 1 COM2 - 2 如此类推; //参数:baud -- 波特率 9600 , 38400 , 115200 or 工作端口号 (网络) //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkOpenDevice(int iport,int baud); //,char *szIPAddr); //函数功能:断开打印设备 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkCloseDevice(); //函数功能:获取设备的操作句柄 //参数:无 //返回值:>0 -- 句柄值 -1 -- 失败 int __stdcall YkGetDeviceHandle(); //函数功能:设备是否已经到连接计算机(仅支持USB口打印机) //参数:无 //返回值:>0 -- 连接 -1 -- 没有连接 int __stdcall YkIsConnected(); //函数功能:初始化打印机 〈详见命令:ESC @〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkInitPrinter(); //函数功能:把将要打印的字符串送入打印机缓冲区(注: 达到满行时会自动打印出来) //参数:pstr -- 将要送打印机的字符串数据缓冲,len -- 字符串数据长度 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrintStr(char *pstr); //函数功能:打印并回车,但不走纸〈详见命令:CR〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnter(); //函数功能:打印并换行,走纸到下一行首〈详见命令:LF〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkFeedPaper(); //函数功能:页模式下,取消打印数据〈详见命令:CAN〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkCancelPrintInPM(); //函数功能:实时响应主机请求, 〈详见命令:DLE ENQ n〉 //参数:n=1:从错误状态恢复,从错误状态出现的行重新开始打印。 //参数:n=2:清除接收缓冲区,打印缓冲区内容。 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkResponse(int n); //函数功能:Tab水平定位,从下一个水平定位点位置开始打印。〈详见命令:HT〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkTabMove(); //函数功能:页模式下,打印数据〈详见命令:ESC FF〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrintInPM(); //函数功能:设置西文字符右间距,以半点为设定单位〈详见命令:ESC SP n〉 //参数:n = 0~255 ,default = 0 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetCharRightSpace(int n=0); //函数功能:设置字符打印方式〈详见命令:ESC ! n〉 //参数:n = 0~255 ,default = 0 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetFontStyle(int n=0); //函数功能:设置绝对打印位置,〈详见命令:ESC $ nL nH〉 //参数:nL -- 位置数值的低字节,nH -- 位置数值的高字节 ,0 ≤ (nL + nH × 256) ≤ 65535 (0 ≤ nL ≤ 255 , 0 ≤ nH ≤ 255) //返回值:0 -- 成功 -1 -- 失败 int YkSetAbsPrnPos(int nL,int nH); //函数功能:使能/禁用用户自定义字符户〈详见命令:ESC % n〉 //参数:n = 0~255 ,default = 0 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableUserDefineChar(int n=0); //函数功能:设置用户自定义字符, 〈详见命令:ESC & y c1 c2 [ x1 d1...d(y×x1)]...[ xk d1...d(y×xk)]〉 //参数:c1, c2分别为起始码和终止码,最多为95个。 //参数:字符宽度,以点为单位,视用什么字体大小而定 //参数:code --自定义字符的内码值,例:使用Font B字体,把空格定义为黑块 内码为c1=0x20,c2=0x20,code[0]=0xff,code[1]=0xff...code[26]=0xff // YkSetUserDefineChar(0x20,0x20,9,code); ///以下数据详见说明书 //y==3 //0 ≤ x ≤ 12 [Font A (12 × 24)] //0 ≤ x ≤ 9 [Font B (9 × 17)] //k = c2 – c1 +1 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetUserDefineChar(int c1,int c2,int x, unsigned char code[]); //函数功能:使能或禁用字符加下画线功能 〈详见命令:ESC - n〉 //参数:n=1 使能,n=0 禁用,默认值n=0。 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableUnderLine(int n=0); //函数功能:设置字符行距为默认值3.75毫米 〈详见命令:ESC 2〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetDefaultLineSpace(); //设置字符行距 〈详见命令:ESC 3 n〉 //参数:n=0~255,默认 n=30 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetLineSpace(int n=30); //函数功能:取消用户自定义字符, 〈详见命令:ESC ? n〉 //参数:n=32~126 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkCancelUserDefChar(int n); //函数功能:设置水平制表位置 〈详见命令:ESC D〉 //参数:tabstr --tab 位置值组成的字符串序列,如 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetTabPos(char * tabstr); //函数功能:使能或禁用加重打印模式 〈详见命令: ESC E n〉 //参数:n =0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetEmphasized(int n); //函数功能:使能或禁用重叠打印模式 〈详见命令: ESC G〉 //参数:n =0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkOverlap(int n); //函数功能:打印后走纸 n 点行(注:可以精确走纸 1点行=0.125mm) 〈详见命令: ESC J n〉 //参数:n =0~255 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrnAndFeedPaper(int n); //函数功能:进入页模式工作 〈详见命令:ESC L〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnablePM(); //函数功能:选择字符字型 〈详见命令:ESC M〉 //参数:n=0 选择字型 A (12×24); n=1 选择字型 B (9×17) //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSelectFont(int n); //函数功能:设置11个国家的不同ASCII字符集 〈详见命令:ESC R n〉 //参数: n 国家代号 /* n International character set 0 U.S.A. 1 France 2 Germany 3 U.K. 4 Denmark I 5 Sweden 6 Italy 7 Spain I 8 Japan 9 Norway 10 Denmark II 11 Spain II 12 Latin America 13 Korea 14 Slovenia / Croatia 15 China */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetInterCharSet(int n=0); //函数功能:从页模式切换到标准模式 〈详见命令:ESC S〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnterSM(); //函数功能:页模式下,设置打印方向, 〈详见命令:ESC T n〉 //参数:n=0~3 ; /* n Print direction Starting position 0 Left to right Upper left 1 Bottom to top Lower left 2 Right to left Lower right 3 Top to bottom Upper right */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetDirectionInPM(int n); //函数功能:使能或禁用顺时针90度旋转字符打印, 〈详见命令:ESC V n〉 //参数:n=0禁用顺时针90度旋转打印 n=1 使能顺时针90度旋转打印 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkClockwiseD90(int n); //函数功能:页模式下,设置设置打印区域,打印页长度范围(76~185mm),打印宽度(最大72mm) 〈详见命令:ESC W xL xH yL yH dxL dxH dyL dyH〉 //参数:left 打印区域左上角x坐标 top 打印区域左上角y坐标 width 打印区域宽度 height 打印区域高度 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetPrnAreaInPM(int left,int top,int width,int height); //函数功能:设置相对打印位置 〈详见命令:ESC \ nL nH〉 //参数:nL ,nH ; 实际位置= (nL + nH x 256)x0.125 毫米 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetRelPrnPos(int nL,int nH); //函数功能:设置打印时的对齐方式 〈详见命令:ESC a n〉 //参数:n=0 左对齐 n=1 居中 n=2 右对齐 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetAlign(int n); //函数功能:设置测纸传感器输出缺纸信号 〈详见命令:ESC c 3 n〉 //参数:n=0~255 , 各位定义,详见命令说明书表格说明 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetPaperSensor(int n); //函数功能:设置纸尽时停止打印 〈详见命令:ESC c 4 n〉 //参数:n=0~255 , 各位定义,详见命令说明书表格说明 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetSensorToStopPrint(int n); //函数功能:使能或禁用打印机面板上的开关 〈详见命令:ESC c 5 n〉 //参数:n=0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnablePanelButton(int n=0); //函数功能:打印后走纸n字符行 〈详见命令:ESC d n〉 //参数:n 字符行数 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrnAndFeedLine(int n); //函数功能:设置字符代码表 〈详见命令:ESC t n〉 //参数:n 代码表代号 取值范围:0 ≤ n ≤ 5 , 16 ≤ n ≤ 19 , n = 255 /* n Character code table 0 Page 0 [PC437 (USA: Standard Europe)] 1 Page 1 [Katakana] 2 Page 2 [PC850 (Multilingual)] 3 Page 3 [PC860 (Portuguese)] 4 Page 4 [PC863 (Canadian-French) 5 Page 5 [PC865 (Nordic)] 16 Page 16 [WPC1252] 17 Page 17 [PC866 (Cyrillic #2)] 18 Page 18 [PC852 (Latin 2)] 19 Page 19 [PC858 (Euro)] 255 Page 255 [User-defined page] */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetCharCodeTable(int n); //函数功能:走黑标纸到打印起始位置 〈详见命令:GS FF〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkFeedToStartPos(); //函数功能:设置字符倍数 〈详见命令:GS ! n〉 //参数:hsize 水平放大倍数 vsize 垂直放在倍数 ,取值范围0~7 /* hsize ,vsize 值与倍数对应关系 0 1倍(原大小) 1 2倍 2 3倍 3 4倍 4 5倍 5 6倍 6 7倍 7 8倍 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetCharSize(int hsize,int vsize); //函数功能:页模式下,设置打印区域内绝对垂直打印起始位置 〈详见命令:GS $ nL nH〉 //参数:nL nH 位置值 位置 = (nL + nH x256) x 0.125 毫米 //返回值:0 -- 成功 -1 -- 失败 int YkSetAbsVertPosInPM(int nL,int nH); //函数功能:进行测试打印 〈详见命令:GS ( A pL pH n m〉 //参数:n,m /* n 指定测试时的纸张来源 0 Basic sheet (roll paper) 1 Roll paper 2 Roll paper m 指定测试样式 1 Hexadecimal dump print 2 Printer status print 3 Rolling pattern print */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDoTestPrint(int n,int m); //函数功能:进入或退出用户设置模式 〈详见命令:GS ( E pL pH 〉 //参数:m=1 进入 m=2 退出 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkUserDefCmd(int m); //函数功能:设置MemorySwitch开关 〈详见命令:GS ( E pL pH 〉 //参数:n=0~7对应MemorySwitch开关1~8。 //参数:数组memory[]对应memory1~8每个开关值。 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetMemorySwitch(int n, int memory[]); ///??? //函数功能:读取MemorySwitch开关值 〈详见命令:GS ( E pL pH〉 //参数:n=0~7对应MemorySwitch开关1~8。 //参数:数组memory[]用于存储读回来对应memory1~8每个开关值。 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkGetMemorySwitch(int n,unsigned char memory[11]); ///??? //函数功能:设置黑标的切撕纸位置和起始打印位置 〈详见命令:GS ( F pL pH a m〉 //参数a =1 设置起始打印位置的设定值 a=2 设置开始切纸位置的设定值 //参数m = 0 指定为前向进纸的方向 m = 1 指定为逆向进纸的方向 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetBlackMarkParam(int a,int m,int nL,int nH); //函数功能:(注:按工作状态功能有所不同)〈详见命令:FF〉 // 页模式:打印后返回到标准模式 // 黑标模式:打印后走黑标到打印起始位置。 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrnAndBackToStd(); //函数功能:定制打印机控制值。 〈详见命令:GS ( M pL pH a n m〉 //参数: /* 保存或者载入命令所定义的数据。 n 功能 1 将命令GS ( F 所设置的数据保存到用户NV 存储器。 2 从用户NV 存储器载入命令GS ( F 所设置的数据。 3 指定在初始设定时禁止或允许自动数据载入程序。 m 指定数据如下: m = 0 与该规格参考手册所叙述的GS ( F 命令的初始设定值相同。 m = 1 将被保存的存储区。 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDefineControl(int n,int m); //函数功能:设置条码HRI字符的打印位置 〈详见命令:GS H n〉 //参数:n=0 不打印,n=1 条形码上方,n=2条形码下方,n=3条形码的上方和下方 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetHRIPos(int n=0); //函数功能:读取打印机ID 〈详见命令:GS I n〉 //参数:n=1~3 不同型号机型,具体内容不同,请查说明书 /* n 打印机ID 1 打印机型号ID 2 类型ID 见说明书类型表 3 固件版本ID */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkGetPrinterID(int n); //函数功能:设置左边距 〈详见命令:GS L nL nH〉 //参数:nL nH 左边距=(nL + nH x 256) x 0.125 毫米 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetLeftMargin(int nL,int nH); //函数功能:打印位置设置为打印行起点 〈详见命令:GS T n〉 //参数:n=0 删除打印缓冲区中的所有数据后设置打印位置为打印行起始点 n=1 将打印缓冲区中的所有数据打印后设置打印位置为打印行起始点 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkToLineHome(int n); //函数功能:执行切纸动作,包括进纸 〈详见命令:GS V m〉 //参数:m=66 n:打印机进纸到(切纸位置+ [n × 0.125 毫米{0.0049英寸}])并切纸,一般n=0 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkCutPaper(int m,int n); //函数功能:设置打印区域宽度。 〈详见命令:GS W nL nH〉 //参数:nL --打印区域宽度低字节 nH -- 打印区域宽度高字节 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetPrnAreaWidth(int nL,int nH); //函数功能:页模式下,设置相对于当前位置的垂直打印起点位置 〈详见命令:GS \ nL nH〉 //参数:nL --位置低字节 nH -- 位置高字节 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetRelVertPosInPM(int nL,int nH); //函数功能:使能或禁用自动状态回复功能(ASB) 〈详见命令:GS a n〉 //参数:0 -- 禁用 1 -- 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableASB(int n); //函数功能:使能或禁用平滑模式 〈详见命令:GS b n〉 //参数:0 -- 禁用 1 -- 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableSmoothPrn(int n); // 函数功能:设置条码的HRI字符字型 〈详见命令:GS f n〉 //参数:0 -- 字体A (12 × 24) 1 -- 字体B (9 × 17) //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetHRICharStyle(int n); //函数功能:设置条码高度 〈详见命令:GS h n〉 //参数:n=1~255 垂直方向的点数 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetBarCodeHeight(int n); //函数功能:打印条码 〈详见命令:GS k m n d1 ... dn〉 //参数:m=65~75 /* m 条形码系统 字符个数 备注 65 UPC-A 11 ≤ n ≤ 12 48 ≤ d ≤ 57 66 UPC-E 11 ≤ n ≤ 12 48 ≤ d ≤ 57 67 JAN13 (EAN13) 12 ≤ n ≤ 13 48 ≤ d ≤ 57 68 JAN8 (EAN8) 7 ≤ n ≤ 8 48 ≤ d ≤ 57 69 CODE39 1 ≤ n ≤ 255 48 ≤ d ≤ 57, 65 ≤ d ≤ 90, 32, 36,37, 43, 45, 46, 47 70 ITF 1 ≤ n ≤ 255 (n 为偶数) 48 ≤ d ≤ 57 71 CODABAR 1 ≤ n ≤ 255 48 ≤ d ≤ 57, 65 ≤ d ≤ 68, 36, 43,45, 46, 47, 58 72 CODE93 1 ≤ n ≤ 255 0 ≤ d ≤ 127 73 CODE128 1 ≤ n ≤ 255 0 ≤ d ≤ 127 74 标准EAN13 12 ≤ n ≤ 13 48 ≤ d ≤ 57 75 标准EAN8 7 ≤ n ≤ 8 48 ≤ d ≤ 57 */ //参数:n 上表中字符个数 //参数:barcode 要转化为条码的数据 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrintBarCode(int m,int n,char * barcode); //函数功能:获取打印机状态, 〈详见命令:DLE EOT n〉 //参数:n = 1~5 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkGetStatus(unsigned char n); //函数功能:读取打印机状态 〈详见命令:GS r n〉 //参数:n=1 传送打印纸传感器状态 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkGetPrinterStatus(unsigned char n); //函数功能:设置条码宽度 〈详见命令:GS w n〉 //参数:参数n=2~6 /* 二元条形码 n 多元条形码单位宽度(毫米) 窄条宽度(毫米) 宽条宽度(毫米) 2 0.250 0.250 0.625 3 0.375 0.375 1.000 4 0.560 0.500 1.250 5 0.625 0.625 1.625 6 0.750 0.750 2.000 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetBarCodeWidth(int n); //函数功能:设置汉字字符打印模式组合。〈详见命令:FS ! n〉 //参数:n=0~255 详见命令说明书中表格 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetChineseFontStyle(int n); //函数功能:进入汉字打印方式。〈详见命令:FS &〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableChineseMode(); //函数功能:退出汉字打印方式。〈详见命令:FS .〉 //参数:无 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDisableChineseMode(); //函数功能:使能或禁用汉字下划线模式。〈详见命令:FS - n〉 //参数:n=0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableChineseUnderLine(int n); //函数功能:定义用户自定义汉字 〈详见命令:FS 2 c1 c2 d1...dk〉 //参数:c1、c2汉字用户自定义汉字区内的区位码,详见说明书表格,如汉字区GB18030,c1 = FE A1 ≤ c2 ≤ FE ,k=72,数组d元素取值范围0~255 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetUserDefChinese(int c1,int c2,int code[]); //函数功能:设置用户自定义字符代码系统 〈详见命令:FS C n〉 //参数:自定义字符代码系统代号 n= 0~1 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetUserDefChineseArea(int n); //函数功能:设置汉字字符左右间距 〈详见命令:FS S n1 n2〉 //参数:左间距n1,右间距n2,0 ≤ n1 ≤ 255,0 ≤ n2 ≤ 255 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetChineseLeftRightSpace(int n1,int n2); //函数功能:使能或禁用汉字四倍大小打印。〈详见命令:FS W n〉 //参数:n=0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetChinese4TimesSize(int n); //函数功能:使能或禁用颠倒打印模式〈详见命令: ESC { n〉 //参数:n=0 禁用 n=1 使能 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableUpsidedown(int n); //函数功能:打印预定义位图 〈详见命令: FS p n m〉 //参数:m 打印密度 /* m 效果 垂直密度(dpi) 水平密度(dpi) 0 普通 203 203 1 倍宽 203 101 2 倍高 101 203 3 4倍 101 101 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrintDefineBitmap(int m,int n); //函数功能:下载预定义位图 〈详见命令: FS q n〉 //参数:szBmpFile,要下载的位图的全路径。 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDefineBitmap(char *szBmpFile); //函数功能:即时打印BMP图象。 〈详见命令:ESC * m nL nH d1...dk 〉 //参数:szBmpFile,要下载的位图的全路径。 /* m 垂直密度 水平密度 0 60 90 1 60 180 32 180 90 33 180 180 一般 m=33 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkPrintBitmap(char *szBmpFile,int m); //函数功能:下装图形后即时打印。 〈详见命令:先执行GS * ,后执行 GS / m〉 //参数:szBmpFile,要下载的位图的全路径。 /* m 效果 垂直密度(dpi) 水平密度(dpi) 0 普通 180 180 1 倍宽 180 90 2 倍高 90 180 3 四倍 90 90 一般 m=0 */ //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDownloadBitmapAndPrint(char *szBmpFile,int m); ///函数功能:设置钱箱驱动方式 〈详见命令: ESC p m t1 t2〉 //参数:使用那个管脚输出脉冲 m=0 2脚 m=1 5脚 脉冲宽度为 t1*2ms t2*2ms ,其中要求 t1 < t2 ,一般 t1=150 t2=250 //返回值:0 -- 成功 -1 -- 失败 int YkSetCashBoxDriveMode(int m,int t1,int t2); //函数功能:设置单状态回调函数(注:适用于能返回状态的打印机型号,如串口打印机) //参数:pCallBack -- 回调函数指针 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkSetCallBack(CallBack pCallBack); //函数功能:使能打印状态回调函数,方便在回调函数根据打印机状态处理业务流程 //参数:enable = 1 ,使能 =0 禁用 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkEnableCallBack(int enable=0); //函数功能:直接与设备数据交互通信(注: 不熟悉设备功能,不建议直接使用) //参数:pdata -- 将要送打印机的数据缓冲,len -- 数据长度 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkDirectIO(unsigned char *pdata,int len); //函数功能:写入打印机序列号(仅使用于杭州宽达公司) //参数:pdata -- 将要写入的打印机序列号的的数据缓冲,字符串以0结尾 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkWriteSerialNo(char *pdata); //函数功能:读取打印机序列号(仅使用于杭州宽达公司) //参数:pdata -- 将要接收打印机序列号的的数据缓冲(分配足够大空间,不少于10字节 ),字符串以0结尾 //返回值:0 -- 成功 -1 -- 失败 int __stdcall YkReadSerialNo(char *pdata); int __stdcall YkPrintRasterBmp(char *szBmpFile); #ifdef __cplusplus } #endif #endif