一、环境介绍

操作系统: win10 64位


QT版本: 5.12.6


Visual Studio IDE 版本:  2017


二、ActiveX控件介绍

ActiveX控件是Microsoft的ActiveX技术的一部分。


ActiveX控件是可以在应用程序和网络中计算机上重复使用的程序对象。创建它的主要技术是Microsoft的ActiveX技术,其中主要是组件对象模型(COM)。


ActiveX控件可以以小程序下载装入网页,也可以用在一般的Windows和Macintosh应用程序环境中。一般说来,ActiveX 控件代替了原先的OCX,它与JAVAapplet的概念和功能差不多。ActiveX控件可以由不同的可以识别Microsoft的COM技术的语言开发,它是一个组件或自包含的软件包,它可以在同一个或分布式的计算环境中开发或使用。


ActiveX控件运行有两种形式:


(1) 可独立运行的exe形式:  参考这里 https://blog.csdn.net/xiaolong1126626497/article/details/112550412

(2) 插件dll形式


本篇文章讲的就是插件dll形式.


QT的帮助文档里有对ActiveX使用的详细介绍:

image.png

三、搭建开发环境

QT程序生成ActiveX插件需要使用MSVC编译器。


VS2017与QT5.12.6环境搭建可以参考这里: https://blog.csdn.net/xiaolong1126626497/article/details/112402861


四、新建工程

打开Visual Studio 2017 创建一个简单的测试工程。

image.png

image.png

image.png

image.png

image.png

image.png

在 Visual Studio 里创建工程,选择activex服务,工程模块会自动加上设置代码。

image.png

image.png

image.png

image.png

image.png

image.png

五、发布DLL并运行测试

程序编译成功之后,接下来进入到DLL生成的目录下,为xxx.dll寻找依赖库。

image.png

image.png

image.png

image.png

修改COM组件、寻找依赖库的过程中360之类的安全软件会拦截,为了方便不出问题,可以提前把这些软件关闭再操作。

接下来在DLL动态库的目录下,创建一个Xxx.html文件,写入调用代码,测试效果。

image.png

<html>
<title>ActiveQtServer_dll_test</title>
</head>
<object id="ActiveQtServer_dll_test" width="80%" height="80%"
    classid="clsid:174e1245-0916-4638-9802-b5a0cc3ca26c">
</object>
</body>
</html>

image.png

HTML文件一定要放在与DLL的同级目录下,然后点击HTML文件选择使用IE浏览器打开。

image.png

image.png

image.png

image.png

QT ComboBox控件 全面详解
本文详细的介绍了QComboBox控件的各种操作,例如:下拉框添加内容、默认显示、获取下拉框总行数、获取选中索引、获取当前内容、清除列表、重绘下拉框等操作。 本系列QT全面详解文章目前共有十五篇,本系列文章较为详细的讲述了QT控件的基础操作和使用,也谢谢大家的关注、点赞、收藏。
QT TextEdit控件 全面详解
本文详细的介绍了TextEdit控件的各种操作,例如:获取内容、输入控件字符、保持在最后一行添加(自动滚屏)、定时关闭、添加数据换行、向鼠标位置插入一行字符、设置字体颜色属性等操作。 本系列QT全面详解文章目前共有十五篇,本系列文章较为详细的讲述了QT控件的基础操作和使用,也谢谢大家的关注、点赞、收藏。
案例分享:Qt流水线图像显示控件(列刷新、1ms一次、缩放、拽拖、拽拖预览、性能优化、支持OpenGL GPU加速)
案例分享:Qt流水线图像显示控件(列刷新、1ms一次、缩放、拽拖、拽拖预览、性能优化、支持OpenGL GPU加速)