Qt Creator5.8调用大漠插件
在网上找了很多,没找到这方面的教程,通过Qt官方帮助终于调试成功。Qt有专门的类实现com组件的调用,说明文档上有很多种方式,这里简单说明一种方式。
第一步、在头文件中添加需要的头文件
#include<QDir>
#include<QProcess>
#include<QAxWidget>
第二步、在Pro文件中添加配置代码
QT += axcontainer
第三步、大漠插件是com组件需注册才能使用
//自动注册大漠插件
void AutoRegCom()
{
QString path;
path=QCoreApplication::applicationDirPath();//获取程序运行路径
QString cmdStr="Regsvr32"+path+"/dm.dll /s";
QProcess p(0);
p.start("cmd",QStringList()<<"/c"<<cmdStr);
p.waitForStarted(); p.waitForFinished();
}
第四步、在主函数中调用AutoRegCom()实现自动注册
第五步、创建activex对象指针
QAxWidget *fla=new QAxWidget();
第六步、初始化大漠对象
fla->setControl(QString::fromUtf8("{26037A0E-7CBD-4FFF-9C63-56F2D0770214}"));//id通过vc6.0的ole view工具查看
第七步、通过dymamicCall调用大漠里面的函数,格式如下
fla->dynamicCall("MoveTo(int,int)",200,200);