Navicat12 无限试用

前言

以前自己玩的时候一直用Navicat操作数据库,感觉手感不错
Windows上直接百度破解版用的也挺爽的
然而好景不长,今年5月份我换了Ubuntu做开发机
虽然说Linux版就是wine运行的Windows版,然而因为上班了,因此开始不太信任来源不明的破解版
然后就开始折腾着破解,后来发现还是重置试用期简单点,然后就一直这么无限试用下去了
直到最近又换了Mac。。。

Linux

LinuxNavicat是通过脚本启动的,因此很容易在运行之前插一个脚本,由这个脚本来重置试用期
注意脚本是Python3的,每次运行均会重置试用期到14天,要求64位版Navicat
插在Navicat启动脚本之前即可

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env python3
# -*- coding:utf-8 -*-

import os
import re

# 试用时间重置的正则
ps = (
re.compile(r'\[Software\\\\PremiumSoft\\\\Data\\\\\{[^\}]*\}\\\\Info\].*?\n[^\[]*'),
re.compile(r'\[Software\\\\Classes\\\\CLSID\\\\\{[^\}]*\}\\\\Info\].*?\n[^\[]*')
)

# user.reg 的路径
regfile = os.path.join(os.environ['HOME'], '.navicat64', 'user.reg')

# 正则替换
with open(regfile, 'r+') as f:
regstr = f.read()
for p in ps:
regstr = p.sub(lambda m: '', regstr)

f.seek(0, 0)
f.truncate()
f.write(regstr)

Mac

很抱歉下面的方法是无效的,我想的太简单了,等我多试几天有个确定可用的方法再更新吧。。

Mac下破解很简单,只要删除一个文件即可(不会丢失任何配置),因此我给丢了个cron定时任务
运行crontab -e,然后粘贴下面的内容即可(注意要在自己的用户上运行,不要到跳到root)
如果哪天发现破解没生效提示已过期,就关掉之后手动执行一下重置命令即可

1
2
3
# ### 无效 ###
# m h dom mon dow command
0 10 * * * rm ~/Library/Application\ Support/PremiumSoft\ CyberTech/Navicat*/Navicat*/.tc*

Windows

由于Windows用的注册表,所以感觉略麻烦,加上我自己不用Windows,所以就简单来了

  1. 关闭Navicat
  2. Win + R,输入regedit回车
  3. 删除HKEY_CURRENT_USER\Software\PremiumSoft\Data
  4. 展开HKEY_CURRENT_USER\Software\Classes\CLSID
  5. 展开每一个子文件夹,如果里面只包含一个名为Info的文件夹,就删掉它