starUML破解方法(Windows10 & MAC)

最近StarUML由2.0更新到3.0。原来的破解方法,修改license验证函数的方式不能用了。安装位置都变了,已经找不到LicenseManagerDomain.js这个文件了。那该怎么办?老司机告诉大家解决办法。

StarUML是用nodejs写的。确切的说是用Electron前端框架写的。新版本中所有的starUML源代码是通过asar工具打包而成。确切的代码位置在“%LOCALAPPDATA%\Programs\StarURML\resources\app.asar” 
我们可以通过asar工具解压修改达到破解目的。具体操作如下:

1. 安装asar

cnpm install -g asar

2. 解压app.asar

asar extract app.asar app
  •  

3. 修改源代码

通过命令行将程序解压到app目录下。真正的验证license的代码在app\src\engine\license-manager.js

/**
   * Check license validity
   *
   * @return {Promise}
   */
  validate () {
    return new Promise((resolve, reject) => {
      try {
        // Local check
        var file = this.findLicense()
        if (!file) {
          reject('License key not found')
        } else {
          var data = fs.readFileSync(file, 'utf8')
          licenseInfo = JSON.parse(data)
          var base = SK + licenseInfo.name +
            SK + licenseInfo.product + '-' + licenseInfo.licenseType +
            SK + licenseInfo.quantity +
            SK + licenseInfo.timestamp + SK
          var _key = crypto.createHash('sha1').update(base).digest('hex').toUpperCase()
          if (_key !== licenseInfo.licenseKey) {
            reject('Invalid license key')
          } else {
            // Server check
            $.post(app.config.validation_url, {licenseKey: licenseInfo.licenseKey})
              .done(data => {
                resolve(data)
              })
              .fail(err => {
                if (err && err.status === 499) { /* License key not exists */
                  reject(err)
                } else {
                  // If server is not available, assume that license key is valid
                  resolve(licenseInfo)
                }
              })
          }
        }
      } catch (err) {
        reject(err)
      }
    })
  }

这是个典型的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 开始工作吧

破解结果

  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: StarUML 5.1.0是一款适用于Windows操作系统的建模工具。它是一个开放源代码的软件,提供了用于创建、修改和管理UML(统一建模语言)模型的功能。 使用StarUML 5.1.0,用户可以通过简单的拖拽和放置操作来创建各种UML图表,如类图、时序图、用例图等。它还提供了丰富的工具和选项,以支持模型的编辑和调整。用户可以添加类、接口、属性、操作等元素,并使用关联、继承、依赖等关系来描述这些元素之间的关联。 此外,StarUML 5.1.0还支持扩展插件,用户可以根据自己的需求进行定制和修改。它还提供了代码生成的功能,可以根据模型自动生成代码,从而加快开发过程。用户还可以与其他建模工具或版本控制系统进行集成,以方便团队协作和版本管理。 总的来说,StarUML 5.1.0是一款功能强大且易于使用的建模工具,适用于Windows操作系统。它提供了丰富的UML图表和工具,用于创建、修改和管理UML模型。它的扩展插件和代码生成功能使其更加灵活和高效。无论是个人开发者还是团队,都可以通过使用StarUML 5.1.0来提高开发效率和质量。 ### 回答2: StarUML是一款开源的UML(统一建模语言)建模工具,版本号为5.1.0,适用于Windows操作系统。 StarUML是一个强大的建模工具,可用于创建和编辑UML图表,如用例图、类图、对象图、活动图、顺序图等。它提供了丰富的工具和功能,使得用户可以以直观和易用的方式进行建模工作。 StarUML支持多种常见的UML图表类型,以及一些扩展的图表类型,如需求图表和测试图表。用户可以根据项目需求选择适当的图表类型,并使用StarUML的工具和功能进行设计和分析。 此外,StarUML还提供了一些高级功能,如自动生成代码、导入和导出模型、与其他建模工具的集成等。这些功能可帮助用户在整个软件开发过程中更高效地工作,并与团队成员进行协作。 StarUML 5.1.0是Windows操作系统上的一个版本。用户可以根据自己的喜好和需求选择适用的操作系统版本,并下载并安装StarUML。安装过程比较简单,只需按照安装向导的步骤进行操作即可。 总之,StarUML是一款功能强大的开源建模工具,适用于Windows操作系统。它可以帮助用户进行UML建模工作,并提供了丰富的工具和功能,以提高开发效率和质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值