最新版Chrome浏览器加载ActiveX控件之SolidWorks 3D控件

背景

SolidWorks Composer Player是一个免费应用程序,它允许内容创作者将 Composer 内容分发给任何最终用户。Composer Player 与 Composer 一样具有高性能。Composer Player 绝不仅仅是一个简单的查看器,内容使用者可以在产品可交付内容中获得深入的互动体验。

allWebPlugin 中间件是一款为用户提供安全、可靠、便捷的浏览器插件服务的中间件产品 **致力于将浏览器插件重新应用到所有浏览器。**它不仅可以实现ActiveX控件在现代浏览器上使用,而且集成也非常简单方便。

alWebPlugin中间件核心优势

1、自创定位算法,实现插件与页面布局无缝衔接,极致用户体验

2、自创插件接口调用方法,保持原汁原味的接口调用及事件响应方式,轻松实现OA系统升级改造

3、支持同一页面或不同页面同时加载多个插件,适应各种复杂应用场景

4、自主创新、安全可控,不受浏览器插件技术限制,支持更多浏览器 (谷歌、火狐、Edge、360浏览器等)。

5、创新沙箱机制,隔离插件与浏览器运行环境,增强插件与浏览器稳定性和安全性

6、攻克诸多技术难点,实现插件不修改、不注册也能使用,极大的降低插件开发量和维护量

准备工作

1、下载allWebPlugin中间件产品,具体如下:

链接:百度网盘 请输入提取码

提取码:z3q0

运行效果

运行效果如下图所示:
SolidWorks Composer Player 控件 SolidWorks Composer Player 控件

集成代码示例

网页设计

html 复制代码
<body onload="init()" >
	<p align="center"><b><span class="style1">SolidWorks Composer Player 3D演示页面</span><br class="style1" /></p>
    <button onclick="openFile()">打开文档</button>
	<button onclick="Print()">打印</button>
	<button onclick="openWebFile()">打开在线文档</button>
    <table style="width:100%;height:80%" border="0" align="center"> 
       <tr style="width:100%;height:80%"> 
           <td  style="width:100%;height:80%">
				<canvas id="SWPlayAPI" style="width:100%;height:100%">
					<p class="error">Sorry, It looks as though your browser does not support the canvas tag.</p>
				</canvas>
	   </td>
       </tr>                       
    </table>
</body>

JavaScript调用代码

javascript 复制代码
function init(){   
	var installPackageUrl = "http://127.0.0.1:6651/install/allwebPlugin_x86_v2.0.1.16_20240806.exe";
	var installPackageVersion = "2.0.0.28";	
	if(awp_IsInstall(installPackageVersion,installPackageUrl)){
		awp_CreatePlugin("SWPlayAPI","{410B702D-FCFC-46B7-A954-E876C84AE4C0}");
		if(SWPlayAPI){
			SWPlayAPI.FileName = "D:\\Users\\LK\\Desktop\\close.svg";
			SWPlayAPI.Password = "";
			SWPlayAPI.AutoPlay = true;
			SWPlayAPI.ShowViewBar = true;
			SWPlayAPI.ShowDiapoBar = true;	//ShowMarkerBar;ShowStandardToolBar;ShowRenderToolBar;ShowCameraToolBar
											//ShowTimelineBar;ShowStatusBar;ShowRedlineToolBar;ShowAnnotationToolBar;
											//ShowCuttingPlaneToolBar;ShowCollabToolBar;ShowGeometryToolBar;
											//ShowMain3DToolBar;ShowCameraViewToolBar;ShowVisibilityToolBar;
											//ShowPropertyBar;ShowMeasurementToolBar;ShowTreesBar;ShowViewBar
											//ShowBOMTreeBar;ShowAssemblyTreeBar;ShowCollabTreeBar;
											//ShowInformationBar;
												
			}
	}
}

function openFile()
{
	if(SWPlayAPI){
		var pluginUtilityObj = awp_getPluginUtility();
			pluginUtilityObj.GetLocalOpenDialog("smg文件(*.smg);;所有文件(*.*)").then(function(varFile){
				console.log(varFile);
				if(varFile != "")
					SWPlayAPI.Password = "";
					SWPlayAPI.FileName = varFile;
			});
	}
}
function Print(){
	if(SWPlayAPI){
		SWPlayAPI.Print();
	}
}
function openWebFile()
{
	if(SWPlayAPI){
		var pluginUtilityObj = awp_getPluginUtility();
		var httpclientObj = awp_getHttpClient();
		httpclientObj.Clear();
		if (httpclientObj.Open(0, "https://local.zsignyun.com:6652/doc/test.smg", false)) {
			httpclientObj.Send().then(function(data){
				if (httpclientObj.GetStatus() == 200) {
					var varTempPath = pluginUtilityObj.GetTempPath();
					var varFile = pluginUtilityObj.GetTempFileName(varTempPath,"zso") + ".smg";
					httpclientObj.ResponseSaveToFile(varFile);
					SWPlayAPI.Open(varFile);
				}
				else{
					var httpStatus = httpclientObj.GetStatus();
					if(httpclientObj.GetStatus() == 0)
					{
						alert("LoadFile test.jt Error:" + httpclientObj.GetErrorText());
					}else{
						alert("LoadFile test.jt Status:" + httpStatus + ",请确保安装目录下web\doc目录存在test.jt");
					}
				}
				httpclientObj.Close();
			});	
		 }
	}
}
相关推荐
lpfasd1231 小时前
git-团队协作基础
chrome·git·elasticsearch
Jonathan Star1 小时前
沉浸式雨天海岸:用A-Frame打造WebXR互动场景
前端·javascript
工业甲酰苯胺2 小时前
实现 json path 来评估函数式解析器的损耗
java·前端·json
老前端的功夫2 小时前
Web应用的永生之术:PWA落地与实践深度指南
java·开发语言·前端·javascript·css·node.js
LilySesy2 小时前
ABAP+WHERE字段长度不一致报错解决
java·前端·javascript·bug·sap·abap·alv
Wang's Blog3 小时前
前端FAQ: Vue 3 与 Vue 2 相⽐有哪些重要的改进?
前端·javascript·vue.js
再希3 小时前
React+Tailwind CSS+Shadcn UI
前端·react.js·ui
用户47949283569154 小时前
JavaScript 的 NaN !== NaN 之谜:从 CPU 指令到 IEEE 754 标准的完整解密
前端·javascript
群联云防护小杜4 小时前
国产化环境下 Web 应用如何满足等保 2.0?从 Nginx 配置到 AI 防护实战
运维·前端·nginx
醉方休4 小时前
Web3.js 全面解析
前端·javascript·electron