关于qt:Qt开发Activex笔记一环境搭建基础开发流程和演示Demo

71次阅读

共计 1346 个字符,预计需要花费 4 分钟才能阅读完成。

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/113773009

长期继续带来更多我的项目与技术分享,征询请加 QQ:21497936、微信:yangsir198808

红瘦子 (红模拟) 的博文大全:开发技术汇合(蕴含 Qt 实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬联合等等)继续更新中…(点击传送门)

Qt 开发专栏:开发技术

上一篇:无
下一篇:敬请期待 …

前言

  应用 C#开发动画,绘图性能跟不上,更换计划应用 Qt 开发 Qt 的控件制作成 OCX 以供 C# 调用,而 activex 则是 ocx 的更高级模式。
  QtCreator 是没有 Active 控件我的项目的,所有须要应用 VS,笔者应用 VS2019 开发。

筹备工作

  Qt5.15.2 + VS2019 + vs tools,搭建根底开发环境不再赘述。
  

开发第一个 Qt Activex:Hello world

步骤一:新建 Qt ActiveQt Server 我的项目

  
  
  
  
  
  

步骤二:拖一个 QLabel,输出”Hello world”

  

步骤三:生成呈现谬误“MSB3073”

  
  须要应用管理员权限关上 VS2019 软件。

步骤四:生成 release 和 debug 版本

  
  
  

步骤五:注册 activex 控件

  运行之前先要注册,应用 Qt 下自带的 idc 注册一下。

idc -regserver activeHelloWorldDemo.dll

  

步骤六:调用 activeQt 控件

  查看一下,关上注册表并搜寻一下,确认 clsid,如下图:
  
  创立一个 html,而后输出如下内容:

<html>
<head>
<title>activeQtDemo</title>
</head>
<body>
    <object id="object" 
            classid="CLSID:2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">    
    <!-- 以下为入坑了 -->
    <!--    classid="2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">  -->    
            [Object not available! Did you forget to build and register the server?]
    </object>
</body>
</html>

  应用 IE 运行,active 是微软特有的,其余浏览器不反对,如下图:
  

入坑

入坑一:调用控件失败

问题

  

起因

  因为 classid 的格局谬误

解决

<html>
<head>
<title>activeQtDemo</title>
</head>
<body>
    <object id="object" 
            classid="CLSID:2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">    
    <!-- 以下为入坑了 -->
    <!--    classid="2F12BFB8-137D-4DC2-9A93-634EFE5A6DFC">  -->    
            [Object not available! Did you forget to build and register the server?]
    </object>
</body>
</html>

  

正文完
 0