StarUM3.1绘制uml图和架构图

392 阅读1分钟

StarUML是用nodejs写的。确切的说是用Electron前端框架写的。新版本中所有的starUML源代码是通过asar工具打包而成。确切的代码位置在安装目录下的\StarURML\resources\app.asar”

我们可以通过asar工具解压修改达到破解目的。具体操作如下:

  1. 安装asar cnpm install -g asar
  2. 解压app.asar asar extract app.asar app
  3. 修改源代码

真正的验证license的代码在app\src\engine\license-manager.js。

这是个典型的javascirpt的Promise。启动后会调用validate函数检查license。

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 开始工作吧