PluginOK中间件产品介绍

     

        PluginOK中间件是一个实现浏览器与桌面程序之间可双向调用的强兼容、高性能、安全可控、低成本、轻量级、易集成、可扩展、跨浏览器的原生小程序系统。通过此中间件可实现在网页中无障碍操作终端电脑连接的各种硬件设备、调用操作系统API及本地DLL功能,可彻底解决ActiveX控件及桌面自动化程序(如微软Office、金山WPS、AutoCAD、Solidworks等)在Chrome、Edge、360、Firefox、IE等浏览器中的嵌入使用问题,是开发丰富型、高性能、高安全及实时通信互联网应用的首选,是浏览器进行功能扩展的秘密武器,也是采用了微软Silverlight和Adobe Flex等RIA技术的ERP、CRM、PDM等系统兼容Chrome等最新版浏览器的最佳产品。PluginOK中间件提供的前端集成接口语言无关,网页中只需使用简单的JS脚本即可完成与B/S系统的对接,让浏览器成为各种信息化系统集成的最佳容器,彻底解决B/S系统的各种痛点和难点,让桌面程序迁移到浏览器中运行从此再无障碍。

        针对各种应用场景,PluginOK中间件之上官方发布可用的典型原生小程序如下:

  • IE控件小程序和IE标签页小程序,可将原来只能在IE浏览器中运行的网页直接内嵌到Chrome等浏览器界面中显示,可指定IE内核特定版本,还可设置在网页显示区中局部加载,实现在同一网页中的双内核网页融为一体的渲染显示效果。让加载了ActiveX控件、Java Applet、Silverlight、Flex的网页无需做任何改变即可在Chrome等浏览器中正常显示。其中IE标签页小程序对标IETab插件,无需手工切换显示,国产自主可控、便捷部署和升级,需要时可开放小程序源代码确保信息安全。
  • VLC网页播放小程序,可实现在Chrome、Edge、Firefox等浏览器中低延迟稳定播放多路海康、大华RTSP流,尤其是在播放高清或H.265编码流时不卡顿、不花屏、首屏内容显示快,和转流方案相比,延迟可控制在数百毫秒级,可节省大量服务器和带宽成本。终端电脑只需一次性部署VLC桌面播放程序、PluginOK中间件和VLC网页播放小程序的集成包,以后全部可在网页中实现静默自动升级。是各种信息化系统集成摄像头监控画面的首先组件,也可购买小程序源代码定制多分屏播放风格和更多功能。
  • Office网页小程序,可实现将本地安装的微软Office软件或金山WPS软件直接内嵌到网页中运行,实现在网页中在线编辑、审阅、签章各类办公文档(doc/docx、xls/xlsx、ppt/pptx、pdf等),是OA、文档管理、网盘等系统的福音,相对于云端技术方案(服务器先解析文档格式后在网页中再渲染内容),Office网页小程序具有无可匹敌的格式兼容性和最佳运行性能,并且保持了原有的用户使用习惯,让原先购买了Office软件授权的投资不至于因为切换到云端技术方案而浪费。目前市场还存在的一些Office网页控件产品,要么只兼容IE和低版本的Chrome浏览器,要么是采用了PPAPI插件技术的方案,而谷歌公司已经官方宣布,将在2021年6月停止PPAPI的支持,届时Office网页小程序将成为Office网页控件的不二之选。作为OA等开发商,是不能被动等到PPAPI彻底停用才来想办法解决问题的,为了保证业务系统的平滑过渡,需尽快启动接入Office网页小程序的事宜才是上策。
  • Autodesk网页小程序,可实现dwg、dxf等工程图在网页中的在线编辑、查看、审图等功能,搭配文件操作小程序还可实现工程图下载后自动打开编辑、保存后自动上传服务器实现服务器端的版本管理。除在线编辑需要启动本地AudoCAD软件来进行外,在线查看和审图等只需要安装免费的DWG True View及Design Review软件即可进行。此小程序也为在网页中实现3D设计图和GIS信息在网页中编辑或展示提供了良好的示范,为工业互联网中的应用高效运行提供强大支撑。
  • Solidworks网页小程序,可实现xt、step、sldprt等三维工程图在网页中的在线编辑、查看等功能,搭配文件操作小程序还可实现工程图下载后自动打开编辑、保存后自动上传服务器实现服务器端的版本管理。除在线编辑需要启动本地Solidworks软件来进行外,在线查看等只需要安装eDrawings软件即可进行,为制造业PDM等系统提供各类工程图文档网页端渲染提供强大支撑。
  • 点云数据网页渲染PCL小程序,可实现点云数据在网页中的在线渲染查看等功能,前端还可调用小程序提供的开发接口实现更丰富的功能。此小程序调用PCL点云库实现,底层调用OpenGL原生支持,为渲染效果和性能提供了根本保障,此小程序建议运行在Windows 7及以上版本的64位系统上。

        PluginOK中间件还提供了强大友好的二次开发接口,客户可根据自己的需要将自身业务需要的DLL和OCX等基于PluginOK SDK开发成对应的小程序,从而可运行到Chrome等各版本浏览器中,无需对DLL和OCX进行重新开发或修改,以最小代价实现业务系统的平稳升级。在信息化系统的开发过程中,往往需要接入多种设备或控件,或者因为系统A只能运行在IE而B系统只能运行在Chrome等导致体验差的问题借助PluginOK中间件可迎刃而解。随着PluginOK中间件之上运行的原生小程序不断丰富,也为尽快满足客户需要的系统扩展功能提供更强大的支撑。

        PluginOK中间件为商业用途而生,所有小程序都需要经过严格测试和数字签名才在客户现场部署实施,而且引入了调用方权限验证机制和时效机制,未经授权的小程序是不可以在正式版环境中运行的,每个小程序都独立于浏览器进程而运行,不会影响浏览器的稳定性,也就不会引发浏览器厂家的封杀。PluginOK中间件还提供了网页中可便捷请求的静默升级机制,无需终端电脑用户干预,大幅度降低了系统的维护升级成本。

        PluginOK中间件高级版所支持的网页中内嵌窗口小程序运行的技术方案,2019年就申请了中国大陆软件发明专利保护,具有无与伦比的技术先进性,而且采购无专利保护的产品是存在侵权风险的。由于PluginOK中间件不依赖任何浏览器本身的插件开发技术,所以其技术方案也不会因为浏览器的升级导致后续无法使用的现象发生,稳定可靠对信息化系统来说是至关重要的。此外PluginOK中间件最低可在Windows XP系统中运行,也兼容最新版本的Windows 10系统,还对Chrome、Edge、360、Firefox、IE、Opera、QQ、搜狗等各版本的浏览器做了全面兼容处理,其出色的兼容能力大幅度扩展了原有信息化系统的兼容性。自PluginOK中间件高级版发布一年以来,经过多个版本的迭代开发和电力、交通、医疗、保险等行业客户现场的成功实施,获得包括一些上市公司的采购或OEM合作支持,已经非常稳定和成熟,是目前市场上此领域唯一成熟的商用中间件软件产品。

在Chrome、Edge等最新版浏览器中继续使用Flash Player方案

一、背景

        最近大连车务段在其公众号发表了题为《全力攻关一昼夜,确保运输三十站》的文章,迅速在网络上引发了群嘲,面对舆论压力只好自行删除了此文。起因是其现在车子系统在浏览器中运行的网页代码依赖Flash Player控件的运行,而其开发商Adobe公司呢,完全没考虑商用业务系统的风险做了一个骚操作,在32后的版本中加入了“定时炸弹”,从2021年1月12日(美国时间)开始禁止Flash内容在Flash Player中运行,而Flash Player在Windows 8及以上版本的操作系统中一直是内置自动更新的,从而引发了现在车子系统的故障。按理说你Adobe公司不再维护Flash Player也就罢了,用户继续使用引发的风险自己承担,也没人会来追究你的责任,非要整这么一个定时炸弹在软件中,这和植入了木马病毒又有啥差别呢?可能很多人在说,3年前Adobe公司就公告了这个时间点会停止更新和分发Flash Player,相信大家也绝不会想到Adobe公司会植入这个定时炸弹。而大连车务段遇到的问题绝不是孤例,只是并非所有单位都在公众号发个表扬稿罢了。

        Flash Player从1996年诞生开始,逐步成为一种广泛使用的多媒体程序播放器,因为Adobe大力推广其Flex作为RIA(因特网应用程序)的框架,第三方因此开发创造出众多丰富型互联网应用程序,最典型的如曾经火热一时的网页游戏,进一步丰富了Flash Player的使用场景。有数据统计,Flash Player曾经达到13亿台电脑安装使用,装机率超过90%。正因为如此,在数年前开发的各种业务系统,包括企事业单位的网站,或多或少也都依赖它才能正常运行。

        然而互联网技术的更新换代一直是非常快的,因为Adobe一系列失误导致Flash Player错失了在移动平台的发展良机,漏洞太多加上HTML5、WebGL、WebAssembly等技术的不断成熟,当前主流的Chrome、Edge等浏览器于2021年1月22日左右发布的88版也纷纷对Flash Player痛下杀手,取消了其PPAPI插件的运行支持,微软也来补刀推出可选更新 KB4577586直接卸载原系统集成的Flash Player版本。对于那些依赖Flash Player的网站和业务系统,如何保证继续正常运行成为了难题。

二、现有方案

        虽然3年前 Adobe就建议开发者将Flash内容及程序移植到 HTML5、WebGL 以及 WebAssembly,但客观现实是当初开发Flash相关内容和程序的公司可能都已经倒闭了,或者因为迁移成本过大、或者体制原因无法立项缺乏经费、或者对新技术储备不足等迟迟未做改造,比如咱们的CCTV官网就还有很多视频还需要Flash Player来播放,所以只能从浏览器端想办法了。而想要在浏览器中继续正常使用Flash Player,目前有以下几个可选的方案:

  • 回退旧版本方案

        这也是大连车务段采用的保守方案,卸载有时间炸弹逻辑的版本,将Flash Player回退到29版(无锁区及广告骚扰问题)使用,此方案虽然可用了,但不可避免的因为使用的是旧版本,其中存在已曝光的漏洞还是存在很大安全风险的,另外也只能在Chrome、Edge等浏览器87及以下版本及IE浏览器中加载使用。

  • 特有浏览器方案

        此方案也就是国产浏览器方案了,如360极速及QQ浏览器等,这些浏览器一般都是双内核,其中的Chromium内核版本一般都比较低,所以还可以继续加载Flash Player来使用,啥时候这些国产浏览器升级内核到88及以上版本,就彻底不支持了。典型的如4399网页游戏网站,也是推荐用户用国产浏览器搭配Flash Player中国区版(解除了时间炸弹但会收集你上网习惯来针对性弹广告)来使用(当然也可以回退版本,不过对小白个人用户来说是不知道如何操作的)。另外Adobe官方对企业用户想要继续使用Flash Player的解决方案说明:Update for Enterprise Customers Using Adobe Flash Player,推荐的第三方合作方叫HARMAN,据了解给出的方案就是提供一个内置了Flash Player的浏览器,一年五万刀费用,其实也是专有浏览器方案,不能在主流的Chrome、Edge、Firefox等浏览器中使用。

  • 替代技术方案

        在Github上有个开源的项目,https://github.com/ruffle-rs/ruffle,是一个用 Rust 语言开发的 Adobe Flash Player 模拟器,通过WASM技术实现在网页播放支持。但Ruffle并非完美无缺,当前它并不能保证完美兼容所有的Flash组件,有时候会遇到出错的情况,另外虽然作为浏览器的扩展可在Chrome等浏览器中调用,不过并未上架浏览器官方商店,只能手工部署安装,对商业用户来说并不友好。由于不是原生官方支持的,其兼容性、稳定性及播放性能都可能存在问题,后续能否长期更新维护也是未知数。

三、改进方案

        从现有方案可以看出,想要完美解决问题,需要同时解决时间炸弹问题(32.0.0.371后的版本加入了时间炸弹的问题)、浏览器全兼容运行问题(Chrome、Edge等88版移除了Flash Player运行支持),在中国大陆地区出的特供版虽然无时间炸弹问题,但因为其收集电脑上网信息并针对性弹出广告,广大用户早就怨声载道,自然也不能用在商业环境中。而国际版从30.0.0.113开始的版本就加入了锁区运行限制,就是国际版正常不能在中国大陆地区的电脑上正常运行。所以对最新的国际版通过修改其控件特定位置的字节码从而解除其在锁区问题及时间炸弹问题。而想要兼容Chrome、Edge等88版及以后更高版浏览器的运行,目前全网上都还没有一个成熟的解决方案。本公司的拳头产品PluginOK中间件(https://codechina.csdn.net/zorrosoft/pluginok)是一个跨浏览器的原生小程序系统,完全可以用来解决此问题。借助PluginOK中间件,有两种办法可以让Flash Player继续运行在Chrome、Edge等最新版浏览器中:

  • PluginOK中间件搭配IE控件小程序(https://codechina.csdn.net/zorrosoft/pluginok/-/blob/master/Bin/IEApplet.txt),让Chrome、Edge、Firefox等浏览器变成双内核方案,而且还可以指定IE内核运行的版本,这种方案尤其适合那些以前只兼容IE低版本浏览器的网站,只需要对网站做简单改造,通过JS脚本连接Web Socket侦听端口,然后通过JSON组包发送命令即可,前端还可以与IE控件小程序互操作。此方案由于借助了IE内核,内存占用会高一些,可能会遇到IE网页加载ActiveX控件警告问题。
  • PluginOK中间件搭配Flash Player网页播放小程序(https://codechina.csdn.net/zorrosoft/pluginok/-/blob/master/Bin/FlashPlayerApplet.txt),此方案完全甩开IE内核来加载Flash Player的ActiveX控件,运行性能比第一种方案好,内存占用低、体验也更好,不过网站改造这块更多一些,不过是一劳永逸的解决办法,如果是新项目要兼容Flash Player的运行,建议用此方案。

针对以上两个方案,也有体验版程序包可以下载:http://zorrosoft.com/Files/PluginOKFlash.zip,需要的朋友可以试试,如遇到问题,可以加微信ZorroSoft咨询。

        这里虽然解决的是Adobe Flash Player的问题,微软的Silverlight也将在2021年10月12日到达支持结束,当初Silverlight可是和Adobe Flex同台竞技的火热程序框架,使用了Silverlight的各种业务系统也非常多,而且只支持IE浏览器。借助PluginOK中间件,还可以将使用了Silverlight的业务系统兼容到Chrome等浏览器运行,也是一箭双雕了。

四、总结

        一个好的技术实施方案,首先是要满足客户的刚性需求,其次是尽量降低开发、实施及运营的总成本,再次是是良好的兼容性和稳定性,最后需尽量确保技术方案不能因为浏览器的升级而失效。本文基于当前最新的技术信息和实践经验,提供了这样一个稳定可靠、兼容性好的低成本半开源技术方案,以供大家选型参考。