最新版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();
			});	
		 }
	}
}
相关推荐
祈澈菇凉1 小时前
Webpack的基本功能有哪些
前端·javascript·vue.js
小纯洁w1 小时前
Webpack 的 require.context 和 Vite 的 import.meta.glob 的详细介绍和使用
前端·webpack·node.js
冰淇淋百宝箱1 小时前
AI 安全时代:SDL与大模型结合的“王炸组合”——技术落地与实战指南
人工智能·安全
网络安全(king)1 小时前
网络安全知识:网络安全网格架构
安全·web安全·架构
anddddoooo1 小时前
域内证书维权
服务器·网络·网络协议·安全·网络安全·https·ssl
Dyan_csdn2 小时前
【Python项目】基于Python的Web漏洞挖掘系统
网络·python·安全·web安全
想睡好2 小时前
css文本属性
前端·css
qianmoQ2 小时前
第三章:组件开发实战 - 第五节 - Tailwind CSS 响应式导航栏实现
前端·css
记得早睡~2 小时前
leetcode150-逆波兰表达式求值
javascript·算法·leetcode
zhoupenghui1682 小时前
golang时间相关函数总结
服务器·前端·golang·time