- 最近更新新版StarUML 6.0.1,需要再次修改asar文件
- 每次更新都修改asar文件比较麻烦,于是用Python做了一个补丁程序
- 安装或更新StarUML之后,将补丁程序放到StarUML的安装目录,以管理员身份运行即可
- 补丁程序功能:自动备份app.asar源文件,拦截许可验证并添加许可信息,默认关闭更新
汉化
使用GPT帮助汉化了一下StarUML 6.0.1的app.asar资源文件
手动修改教程(V6)
1. 解包app.asar。复制一份StarUML安装目录下resources中的app.asar(通常在:%ProgramFiles%\StarUML\resources),然后通过asar打包/解包工具解包app.asar(工具就不推荐了,搜索引擎搜索:asar打包解包)
2. 拦截许可验证并添加许可信息修改文件:解包目录/src/engine/license-manager.js。
① 首先添加许可信息,修改license-manager.js文件中的变量var licenseInfo = null为:
var licenseInfo = { "name": "All User", // 授权用户名称 "product": "STARUML.V6", // 授权产品 "licenseType": "PRO", // 许可类型 "quantity": 999, // 授权数量 "timestamp": 1697531734233 // 应该是授权时间,反正是一个时间戳,10位13位无所谓 };
② 拦截需验证,直接返回许可信息。找到license-manager.js文件中LicenseManager类的validate函数,修改为:
validate() { return new Promise((resolve, reject) => { try { // Local check resolve(licenseInfo); // 直接返回许可信息 return; var file = this.findLicense(); if (!file) { reject("License key not found"); } else { // 此处已省略许可验证逻辑代码 } } catch (err) { reject(err); } }); }
3. 默认关闭更新修改文件:解包目录/resources/default/preferences/default.json。
修改schema > checkUpdate.checkUpdateOnStart > default的值为false即可:
"checkUpdate.checkUpdateOnStart": { "text": "Check Updates on Start", "description": "Check updates on application start.", "type": "check", "default": false }
4. 将解包目录重新打包为app.asar,替换StarUML安装目录下resources中的app.asar即可
StarUML Setup 6.0.1、StarUML Patch、汉化资源(app.asar)(提取码:Ve8M)👇StarUMLhttps://www.123pan.com/s/kPLA-LNXbv.html