vs2015 配置qt5.9.3 编写 activex 程序 ocx 程序

一  环境配置部分的问题

   1.使用  qt-vsaddin-msvc2015-2.5.1.vsix   在微软官网下载的

      报错 the fllowing error occurred error reading vs project  

   2. 使用 qt-vsaddin-msvc2015-2.5.0-rev.09.vsix  qt官网下载的

      能够识别到但是运行时候,会报错找不到qt的文件

      : error : MSB4018: “VCMessage”任务意外失败。

      : error : ERROR running qmake

      : error : qmake: (\bin\qmake.exe)

3. 使用 qt-vs-addin-msvc2015-2.0.0-beta.vsix  qt官网下载的

      可以正常运行

 

     卸载 qt-vs-addin 在  工具 --> 拓展和更新 --> 全部 --> 右侧会看到已安装的 qt-vs-addin 卸载即可。

      期间也尝试换了不同版本的 qt进行测试。并没有解决上述问题,降低了 qt-vs-addin版本可以正常编译。

 

二  编译测试程序部分问题

1.     如果出现 未找到 ui_xxxxxxxx.h  要先编译一下ui文件才可以

2.    vs 创建 active x 程序时

    

然后下一步  下一步 当 选择qt 模块式,会发现有 ActiveQT container 和  Active server 如果你两个都勾选可能会有问题

会出现如下错误  error LNK2001: 无法解析的外部符号 DllCanUnloadNow 等     

 

 

再重新创建 ActiveQT srver项目,选择模块时 去掉  ActiveQT container   模块即可

 

三 网页模拟运行时的总结

 

   提示: mfc生成的 .ocx 文件和 qt 通过activeQT server 生成的 dll 是一个东西。通用的

 

 

    1. 首先要打开  cmd 进行注册表注册如        regsvr32   xxxxx.dll (你编译出来的active 的dll文件)  成功后会有提示弹窗

    2. 关于 CLASSID  即下面圈红这个,也可以去注册表进行查询

 

 

3. 测试程序 

 qt 测试程序 创建普通gui qt程序就行

#include <QtWidgets/QApplication>
#include <QAxWidget>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QAxWidget *flash = new QAxWidget(0, 0);


    QtGuiApplication2 w;
    w.show();


    flash->resize(500, 800);

    flash->setControl(QString::fromUtf8("{0A3B2EBA-BFB4-4F4F-AB15-B021CF9A0DF5}"));

//    flash->dynamicCall("LoadMovie(long,string)", 0, "c:/1.swf");

    flash->show();

    return a.exec();
}
 

 运行结果如下

2. 网页上测试是通过 写html   内容如下

    <object 
        classid="clsid:0A3B2EBA-BFB4-4F4F-AB15-B021CF9A0DF5" 
        id="0A3B2EBA-BFB4-4F4F-AB15-B021CF9A0DF5" 
        codebase="testOcx.ocx" 
        size="500" 
        width="500" 
        height="500"> 
    </object> 

 

 

运行结果如下

参考   https://wenku.baidu.com/view/a02d34f8dd3383c4bb4cd2a3.html

 

四  关于不同浏览器运行方面

   active x 支持 ie浏览器。如果要使用谷歌或者火狐浏览器 需要安装插件,IE Tab

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值