Navicat Premium 15如何实现修改注册表

2023-05-17,,

本篇文章为大家展示了Navicat Premium 15如何实现修改注册表,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

最近看上了Navicat Premium 15对PostgreSQL的支持,老版本的会有找不到oid字段报错,网上栖息的一些和谐版本是通过暴力修改二进制文件中的密钥来完成的,把可执行文件的数字签名也给破坏了,若遇到别有用心的捆绑个后门也不是不可以,运行着没有底气,于是寻找突破14天试用的办法。

网上有12版本的删注册表方法,显得有些暴力,本文在这些方法的基础上缩小了删除的范围,避免伤及无辜。

首先把HKEY_CURRENT_USER\Software\Classes\CLSID和HKEY_CURRENT_USER\Software\PremiumSoft备份出来以便意外时修复,然后找出保存试用信息注册表信息项并删除,记录下删除的注册项信息:

#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重新试用,然后再执行一次上述的代码,根据输出信息就知道注册信息其实就两个注册表项中有,修正代码删除这两项就能达成目标,于是用先前备份的注册表文件修复注册表,在今后的使用中删除这两项就可以了,精准定位后的注册信息删除代码如下:

#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 15如何实现修改注册表.doc》

下载本文的Word格式文档,以方便收藏与打印。