qt通过驱动打开钱箱
2015-10-12 10:44
459 查看
1.前言
此前通过默认打印机驱动打开钱箱,会打印一段空白纸。在网上查找到可以通过向打印机发送命令来打开钱箱2.代码片段
myqtcash.cppvoid myqtcash::on_openCash_clicked() { //这里看下直接调用打开钱箱是否可以 //这里如果不能用qt实现 我直接用windows来搞 QString strdllpath(""); strdllpath = QCoreApplication::applicationDirPath(); strdllpath += "/dll/"; QString strhttpdllpath(""); strhttpdllpath = strdllpath + "PrinterDLL.dll"; QLibrary myLib(strhttpdllpath); typedef int (*pWz_Open)(const char* szPrinterName, enum PRINTER_TYPE printerType); pWz_Open cat_Open = (pWz_Open) myLib.resolve("Wz_Open"); typedef int (*pWz_Close)(); pWz_Close cat_Close = (pWz_Close) myLib.resolve("Wz_Close"); typedef int (*pWz_OpenCashBox)(); pWz_OpenCashBox cat_OpenCashBox = (pWz_OpenCashBox) myLib.resolve("Wz_OpenCashBox"); if (cat_Open != NULL && cat_Close != NULL && cat_OpenCashBox != NULL) { if (cat_Open("USB", POS_OPEN_BYUSB_PORT) != POS_SUCCESS) { QMessageBox::information(this, "msg", QStringLiteral("打开usb端口失败")); return; } int nret = cat_OpenCashBox(); if (nret != POS_SUCCESS) { QString strError(""); strError = QString("failed open cashbox, error:%1").arg(nret); QMessageBox::information(this, "msg", strError); cat_Close(); return; } cat_Close(); } }
3.备注
1.在win7+vs2010+qt5.40+佳博80160测试通过2.完整测试url:http://download.csdn.net/detail/zhang_ruiqiang/9173131
相关文章推荐
- QT学习 第一章:基本对话框
- 使用Shiboken为C++和Qt库创建Python绑定
- Qt定时器和随机数详解
- Qt实现图片移动实例(图文教程)
- Qt for Android开发实例教程
- QModelIndex/Role/Model介紹<二>
- 基于PyQt5的快速开发框架QFramer
- OSX下安装PyQt
- ok6410开发板移植DirectFB手记
- 【笔记】给Qt内嵌一个Chrome吧
- 【算法】最短路径之A*搜索
- qt入门必备
- 在 Qt4 中使用 C++11
- Hello Word ~ v0.2.2 背单词软件发布 -- By WHYPRO
- ubuntu下opencv和qt的安装配置
- linux下opengl的安装(with qt)
- qt 学习小节
- QT的命名风格
- QT 中的sleep
- QT 串口的监控