vs2017开发ActiveX(主讲OCX)(一)、前言


本文主要是介绍一下微软对ActiveX的规划情况。

原文

微软有一篇阐述的文章:A break from the past, part 2: Saying goodbye to ActiveX, VBScript, attachEvent…

简述

下面我们简述一下:在微软发布的Microsoft Edge浏览器是不支持ActiveX的,说白了,微软的长远目标是浏览器为Microsoft Edge,而继续保留Internet Explorer浏览器的原因是为了兼容以前的一些技术,作为中间过渡的一个作用。而在未来的技术中心ActiveX是肯定要被舍弃的,目前虽然依然还支持,但已经有一定的限制性了,且建议在未来的技术中不要在使用。
原文是这样的

Here are some key technologies which will not be supported in Microsoft Edge. A number of these had been deprecated in the past few releases, but moving to a new engine allows us to remove support completely. To ensure future compatibility with Microsoft Edge and other modern browsers, we recommend against any future development or deployment of these technologies. These technologies will continue to be supported in Internet Explorer on Windows 10 for users and enterprises who depend on them.
大概意思就是:以下是Microsoft Edge不支持的一些关键技术。在过去的几个版本中,其中一些已被弃用,但转向新引擎可以让我们完全取消支持。为了确保将来与Microsoft Edge和其他现代浏览器兼容,我们建议不要在将来开发或部署这些技术。对于依赖它们的用户和企业,Windows 10上的Internet Explorer将继续支持这些技术。
这里我们只讨论ActiveX,

ActiveX存在原因

存在原因:ActiveX是1996年引入的二进制扩展模型,它允许开发人员在网页中嵌入本机Windows技术(COM / OLE)。可以从站点下载和安装这些控件,然后在进程中加载​​这些控件并在Internet Explorer中呈现。

ActiveX舍弃原因

舍弃原因:HTML5时代的功能大大减少了对ActiveX控件的需求,这些功能还可以跨浏览器生成可互操作的代码。Microsoft Edge将支持本机PDF呈现和Adobe Flash作为内置功能而不是外部附加组件。我们最近演示了我们在基于HTML / JavaScript的现代扩展模型上的早期工作,以提供超出HTML5可用范围的可扩展性。我们将在今年夏天首次发布Microsoft Edge后启用此新模型,我们期待尽快分享更多详细信息。

用什么技术代替ActiveX

代替:ActiveX是一种不应用于新开发的传统技术。ActiveX控件的许多功能可以使用现代技术(如HTML5和JavaScript,现代浏览器扩展或WebAssembly模块)以更简单,更安全的方式执行。

后语

虽然话是这么说,但不管ActiveX存在着多少问题,或者说隐患,我们一些企业仍然一时半会是更新不到新技术的,一是成本太大,而是新技术还不够完善,某些特殊需求还不能完美支持。如在视频监控行业,不仅存在国标协议,还存在很多私有协议,所以不得不继续使用。
下一篇我们开始记录怎么通过vs2017创建OCX项目。

posted @ 2019-06-18 10:47  SunkingYang  阅读(1445)  评论(0编辑  收藏  举报