Qt开发Activex笔记(一):环境搭建、基础开发流程和演示Demo

简介: Qt开发Activex笔记(一):环境搭建、基础开发流程和演示Demo

搜索

网络异常,图片无法展示
|

网络异常,图片无法展示
|

足迹

动态

消息

Qt开发Activex笔记(一):环境搭建、基础开发流程和演示Demo

网络异常,图片无法展示
|

长沙红胖子Qt

网络异常,图片无法展示
|
于 2021-02-11 12:37:53 发布
网络异常,图片无法展示
|
22481
网络异常,图片无法展示
|

文章标签:QtActivexVS2019

版权

33 篇文章90 订阅

订阅专栏

19 篇文章1 订阅

订阅专栏

若该文为原创文章,转载请注明原文出处

本文章博客地址:https://blog.csdn.net/qq21497936/article/details/113773009

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

红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

Qt开发专栏:开发技术

上一篇:没有了

下一篇:《Qt开发Activex笔记(二):Qt调用Qt开发的Activex控件


前言

  使用Qt开发Qt的控件制作成OCX以供C#调用,而activex则是ocx的更高级形式。

  QtCreator是没有Activex控件项目的,所以需要使用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>

  




相关文章
|
3月前
|
开发工具 C++
qt开发技巧与三个问题点
本文介绍了三个Qt开发中的常见问题及其解决方法,并提供了一些实用的开发技巧。
|
3月前
自己动手写QT多线程demo
本文是作者关于如何编写Qt多线程demo的教程,介绍了如何实现多线程功能,包括可暂停和继续的功能。文章提供了部分示例代码,展示了如何创建线程类、启动和管理线程,以及线程间的通信。同时,还提供了相关参考资料和免费下载链接。
|
3月前
|
4月前
|
C++
C++ Qt开发:QUdpSocket网络通信组件
QUdpSocket是Qt网络编程中一个非常有用的组件,它提供了在UDP协议下进行数据发送和接收的能力。通过简单的方法和信号,可以轻松实现基于UDP的网络通信。不过,需要注意的是,UDP协议本身不保证数据的可靠传输,因此在使用QUdpSocket时,可能需要在应用层实现一些机制来保证数据的完整性和顺序,或者选择在适用的场景下使用UDP协议。
206 2
Qt开发网络嗅探器02
Qt开发网络嗅探器02
|
4月前
|
网络协议 容器
Qt开发网络嗅探器03
Qt开发网络嗅探器03
|
5月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
199 1
|
4月前
|
监控 C++ 容器
【qt】MDI多文档界面开发
【qt】MDI多文档界面开发
117 0
|
4月前
|
存储 运维 监控
Qt开发网络嗅探器01
Qt开发网络嗅探器01
|
4月前
【qt】多窗口开发
【qt】多窗口开发
71 0