博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt控制中控考勤SDK
阅读量:6840 次
发布时间:2019-06-26

本文共 1581 字,大约阅读时间需要 5 分钟。

  hot3.png

读取所用用户信息的代码:

QVariant dwMachineNumber(1);    QVariant dwEnrollNumber("");    QVariant Name("");    QVariant Password("");    QVariant Privilege(0);    QVariant Enabled(false);    QList
inplist; inplist << dwMachineNumber << dwEnrollNumber << Name << Password << Privilege << Enabled ; //要获取组件执行后传人参数的值 需将参数放入QList
QAxObject *zk = new QAxObject(this); zk->setControl("zkemkeeper.ZKEM.1");//连接中控控件 QVariant connStatus=zk->dynamicCall("Connect_Net(string, int)","192.168.10.242",4370); //连接考勤机 if(connStatus.toBool()){ connStatus = zk->dynamicCall("ReadAllUserID(int)",1); //读取用户信息 QVariant readed = zk->dynamicCall("SSR_GetAllUserInfo(long, QString&, QString&, QString&, int&, bool&)",inplist); while(readed.toBool()){ readed = zk->dynamicCall("SSR_GetAllUserInfo(long, QString&,QString&, QString&, int&, bool&)",inplist); qDebug() << "inplist=" << inplist; } zk->dynamicCall("Disconnect()"); //关闭连接 } qDebug() << "connStatus:" << connStatus; delete zk; zk=NULL;

要点:在Qt中用 dynamicCall 调用COM组件函数 ,COM组件函数的参数为指针变量时 ,若想获取COM组件函数执行后传人的指针参数的值,需将参数保存在一个 QList<QVariant> 中后传入,例如COM组件中的SSR_GetAllUserInfo函数的定义为:

VARIANT_BOOL SSR_GetAllUserInfo( [in]  LONG dwMachineNumber, [out] BSTR* dwEnrollNumber, [out] BSTR* Name, [out] BSTR* Password, [out] LONG* Privilege,  [out]  VARIANT_BOOL* Enabled)

想要在Qt中获取:

dwMachineNumber机器号dwEnrollNumber用户号Name用户姓名Password用户密码Privilege用户权限,3 为管理员,0 为普通用户Enabled用户启用标志,1 为启用,0 为禁用

则实现方式需写成上面的形式。

转载于:https://my.oschina.net/jaakan/blog/824287

你可能感兴趣的文章
Java中ArrayList和LinkedList区别
查看>>
css渐变
查看>>
安全漏洞影响的电子邮件地址
查看>>
linux超级基础系列——什么是shell? bash和shell有什么关系?
查看>>
硬件发展历史
查看>>
写一个迷你版Smarty模板引擎,对认识模板引擎原理非常好(附代码)
查看>>
OC中归档与解归档
查看>>
配置与管理DNS服务器
查看>>
linux程序包管理之源码编译安装
查看>>
Eureka Server
查看>>
读源码Apache-commons-lang3-3.1(二)
查看>>
浅谈Android五大布局(二)——RelativeLayout和TableLayout
查看>>
BI笔记之---SSAS库Process的几种方案
查看>>
PLSQL用DBLINK连接其他数据库进行数据同步导出
查看>>
kafka 文档 (二)用途和快速启动
查看>>
我的友情链接
查看>>
cygwin 163源获取失败
查看>>
我的友情链接
查看>>
多级列表的实现
查看>>
docker 配置 lnmp 开发环境
查看>>