最新版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
运行效果
运行效果如下图所示:
集成代码示例
网页设计
<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调用代码
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();
});
}
}
}