作者:sam_shan
来源:CSDN
原文:https://blog.csdn.net/sam_shan/article/details/80585240
版权声明:本文为博主原创文章,转载请附上博文链接!
StarUML3.0的破解方法
最近StarUML由2.0更新到3.0。原来的破解方法,修改license验证函数的方式不能用了。安装位置都变了,已经找不到LicenseManagerDomain.js这个文件了。那该怎么办?老司机告诉大家解决办法。
StarUML是用nodejs写的。确切的说是用Electron前端框架写的。新版本中所有的starUML源代码是通过asar工具打包而成。确切的代码位置在“%LOCALAPPDATA%\Programs\StarURML\resources\app.asar”或者“C:\Program Files\StarUML\resources”
我们可以通过asar工具解压修改达到破解目的。具体操作如下:
1. 安装asar
cnpm install -g asar
2. 解压app.asar
asar extract app.asar app
3. 修改源代码
通过命令行将程序解压到app目录下。真正的验证license的代码在app\src\engine\license-manager.js
checkLicenseValidity () {
this.validate().then(() => {
setStatus(this, true)
}, () => {
// 原来的代码,如果失败就会将状态设置成false
// setStatus(this, false)
// UnregisteredDialog.showDialog()
//修改后的代码
setStatus(this, true)
})
}
参照上面的代码将reject的callback原代码注释掉。换成setStatus(this, true) 这样无论你注册与否都验证成功。
4. 重新打包替换原来的app.asar
asar pack app app.asar
启动StarUML 开始工作吧