![](https://img-blog.csdnimg.cn/20190618093337416.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
VS2017开发ActiveX之OCX控件指南
由于长期开发OCX,且手中的编译器经历过vs2010,vs2012,vs2015到现在的vs2017,发现后面的vs对ocx的开发较2010有一定的区别变化,所以想写几篇用2017开发的教程,以便于一些需要用,且上手的编译器就是2010以后的。
SunkingYang
C++资深工程师,拥有12年C++开发经验。
期间从事Windows客户端及Linux服务端开发。客户端有ActiveX、MFC、QT,医疗虚拟与现实(Ogre、QT、OpenCV等),三维人脸识别。
拥有4年天网视频监控开发经验,包含ocx插件开发、国标解码库:软解码和硬解码开发等(Windows平台),2年雪亮工程国标服务开发经验,包含国标28181级联服务、国标流媒体等(Linux平台)。
展开
-
vs2017开发ActiveX(主讲OCX)(一)、前言
文章目录原文简述ActiveX存在原因ActiveX舍弃原因用什么技术代替ActiveX后语 本文主要是介绍一下微软对ActiveX的规划情况。 原文 微软有一篇阐述的文章:A break from the past, part 2: Saying goodbye to ActiveX, VBScript, attachEvent… 简述 下面我们简述一下:在微软发布的Microsoft Edge...原创 2019-06-18 10:47:21 · 1514 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(二)、新建项目
前言 依赖的工具集 由于vs2017是在线安装,如果要创建ActiveX项目,需要安装“使用 C++ 的桌面开发 ”及“Visual Studio 扩展开发 ”工具集: 进入工具集 如果已经安装了vs,但没安装这两个工具集,想进入到该界面:在菜单栏,点“工具”——获取工具和功能 新建ActiveX项目 文件——新建——项目——Visual C++——MFC/ATL——MFC Activex控...原创 2019-06-18 10:21:25 · 1841 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(三)、MFC ActiveX控件向导中的控件设置
文章目录前言MFC ActiveX控件向导可见时激活无窗口激活未剪辑的设备上下文无闪烁激活不活动时有鼠标指针通知优化的绘图代码 前言 先把图片上上来: 官方称之为:MFC ActiveX控件:优化 官方是这么介绍的: 可见时关闭激活和在非活动时提供鼠标交互在激活之前不创建窗口的控件。无窗口激活永远不会创建窗口的控件,即使它们被激活也是如此。 Windows对OLE对象有两个主要缺点:它们在活动时...原创 2019-06-18 14:49:17 · 1669 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(四)、绘制ActiveX控件
文章目录绘制控件的整个过程以及ActiveX控件向导创建的代码以支持绘制ActiveX控件的绘制过程如何优化绘制过程优化你的绘制代码如何使用元文件绘制控件 参考MFC ActiveX Controls: Painting an ActiveX Control 本文介绍ActiveX控件绘制过程以及如何更改绘制代码以优化过程。(有关如何通过不使控件单独恢复以前选择的GDI对象来优化绘图的技术,请参阅...原创 2019-06-18 15:37:00 · 950 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(五)、事件
事件 文章目录事件MFC ActiveX 控件:添加常用事件 常用事件支持通过向导添加使用添加事件向导添加常用事件件使用添加事件向导添加KeyPress常用事件在添加事件向导中更改常用事件MFC ActiveX 控件:添加自定义事件 ActiveX控件使用事件来通知容器控件发生了什么。事件的常见示例包括控件的点击,使用键盘输入的数据以及控件状态的更改。发生这些操作时,控件将触发事件以警告容器。 ...原创 2019-06-18 17:52:46 · 1137 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(六)、添加自定义事件
添加自定义事件 文章目录添加自定义事件前言通过添加事件向导添加的自定义事件使用“添加事件向导”添加ClickIn自定义事件添加自定义事件的事件向导更改调用FireClickIn使用“添加事件向导”添加消息处理程序具有常用名称的自定义事件使用常用事件名称添加自定义事件 前言 自定义事件与常用事件的不同之处在于它们不会被类COleControl自动触发。 自定义事件将由控件开发人员确定的特定操作识别为...原创 2019-06-19 10:32:10 · 2031 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(七)、方法
方法 文章目录方法 ActiveX控件触发事件以在其自身与其控件容器之间进行通信。容器还可以通过方法和属性与控件通信。方法也称为函数。 方法和属性提供导出的接口,供其他应用程序使用,例如自动化客户端和ActiveX控件容器。有关ActiveX控件属性的详细信息,请参阅文章MFC ActiveX控件:属性。 方法在使用和目的上类似于C ++类的成员函数。您的控件可以实现两种类型的方法:常用和自定义。...原创 2019-06-19 14:13:48 · 985 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(八)、添加常用方法
添加常用方法 文章目录添加常用方法前言使用“添加方法向导”添加常用方法使用“添加方法向导”添加常用Refresh方法在添加方法向导中更改常用函数 前言 备注:本文所介绍方法,vs2017已经不支持,仅是因教程连贯需要,vs2010是支持的,如有需要的同学可以继续往下看。 常用方法与自定义方法的不同之处在于它已经由类COleControl实现。 例如,COleControl包含一个预定义的成员函数,...原创 2019-06-19 14:38:49 · 1445 阅读 · 5 评论 -
vs2017开发ActiveX(主讲OCX)(九)、添加自定义方法
添加自定义方法 文章目录添加自定义方法前言使用“添加方法向导”添加自定义方法使用“添加方法向导”添加PtInCircle自定义方法通过添加方法向导更改自定义方法 前言 备注:本文所介绍方法,vs2017已经不支持,仅是因教程连贯需要,vs2010是支持的,如有需要的同学可以继续往下看。 自定义方法与常用方法的不同之处在于它们尚未由COleControl实现。 您必须为添加到控件的每个自定义方法提供...原创 2019-06-19 14:57:30 · 1229 阅读 · 0 评论 -
vs2017开发ActiveX(主讲OCX)(十)、手动添加自定义方法
不知大家有没有发现,vs2017在通过类向导添加方法的时候,已经和以前的版本不一样了,我不知vs2017以前的版本是不是正常的,至少我的已经不正常了,刚开始以为不是最新的,我把vs版本更新至最新,还是不行,然后我有吧所有C++的安装包装了,仍然不行,我又两种猜测:一个是因为微软已经不推荐使用ActiveX插件了,所以逐步弱化,到以后的直接不支持,但我感觉这种可能性又不是太大,原因是,添加事件都是一...原创 2019-06-20 10:07:16 · 2344 阅读 · 4 评论 -
vs2017开发ActiveX(主讲OCX)(十一)、类向导中MFC ActiveX添加方法、添加函数、添加变量、添加事件、添加属性、添加方法的区别
本文我们就来说说类向导中MFC ActiveX添加方法、添加函数、添加变量、添加事件、添加属性、添加方法的区别。这个问题曾经困扰过我。 此处是向CCreateOcxDemoApp类中添加成员变量,及成员函数,只能在此类中使用: 此处是向CCreateOcxDemoCtrl中添加成员函数、成员变量、事件,只限于此类中使用。 此处是向CCreateOcxDemoPropPage类中添加成员函...原创 2019-06-20 10:40:40 · 2478 阅读 · 13 评论