最近看上了Navicat Premium 15对PostgreSQL的支持,老版本的会有找不到oid字段报错,网上栖息的一些和谐版本是通过暴力修改二进制文件中的密钥来完成的,把可执行文件的数字签名也给破坏了,若遇到别有用心的捆绑个后门也不是不可以,运行着没有底气,于是寻找突破14天试用的办法。
网上有12版本的删注册表方法,显得有些暴力,本文在这些方法的基础上缩小了删除的范围,避免伤及无辜。
首先把HKEY_CURRENT_USER\Software\Classes\CLSID和HKEY_CURRENT_USER\Software\PremiumSoft备份出来以便意外时修复,然后找出保存试用信息注册表信息项并删除,记录下删除的注册项信息:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#encoding:utf-8 require 'win32/registry' Win32::Registry::HKEY_CURRENT_USER.open('Software\\Classes\\CLSID') do |reg| reg.each_key do |key,wtime| Win32::Registry::HKEY_CURRENT_USER.open('Software\\Classes\\CLSID\\'+key) do |reg_i| if reg_i.keys.include?('Info') puts 'delete '+reg_i.name+'\\Info' reg_i.delete_key('Info',true) end end end end Win32::Registry::HKEY_CURRENT_USER.open('Software\\PremiumSoft\\NavicatPremium') do |reg| puts 'delete '+reg.name+'\\Registration15XEN' reg.delete_key('Registration15XEN',true) end |
之后运行NaviCat重新试用,然后再执行一次上述的代码,根据输出信息就知道注册信息其实就两个注册表项中有,修正代码删除这两项就能达成目标,于是用先前备份的注册表文件修复注册表,在今后的使用中删除这两项就可以了,精准定位后的注册信息删除代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#encoding:utf-8 require 'win32/registry' reg_key_item = 'Software\\Classes\\CLSID\\{05411C19-D96B-F48B-9097-9C1F11F012F2}' Win32::Registry::HKEY_CURRENT_USER.open(reg_key_item) do |reg| puts 'delete '+reg.name+'\\Info' reg.delete_key('Info',true) end reg_key_item = 'Software\\PremiumSoft\\NavicatPremium' Win32::Registry::HKEY_CURRENT_USER.open(reg_key_item) do |reg| puts 'delete '+reg.name+'\\Registration15XEN' reg.delete_key('Registration15XEN',true) end |
类似的方法也适用于超级终端工具SecureCRT家族,功能不受限,可以不断尝鲜。
到此这篇关于Navicat Premium 15无限试用注册表修改的方法详解的文章就介绍到这了,更多相关Navicat Premium注册表修改内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/mscf/article/details/106958054