From 2bfec835377d8f7f347ee6bbbc08cdbaf0d1b526 Mon Sep 17 00:00:00 2001 From: zhangxw Date: Thu, 16 Dec 2021 09:52:10 +0800 Subject: [PATCH] =?UTF-8?q?For=20NavicatPremium=2015=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E5=88=A0=E9=99=A4=E7=9A=84=E5=AD=90=E8=8A=82?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/returncode/navicat/Registery.java | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/src/com/returncode/navicat/Registery.java b/src/com/returncode/navicat/Registery.java index 5a9dcf4..a8991b8 100644 --- a/src/com/returncode/navicat/Registery.java +++ b/src/com/returncode/navicat/Registery.java @@ -21,6 +21,7 @@ private int deleteSubTree(RegistryKey parentKey, String subkeyName) { if (subkey != null) { System.out.println("delete : " + subkey.getPath()); try { + return parentKey.deleteSubTree(subkeyName); } catch (RegistryException re) { re.printStackTrace(); @@ -28,15 +29,31 @@ private int deleteSubTree(RegistryKey parentKey, String subkeyName) { } return 0; } + private int deleteSubTree(RegistryKey grandKey, RegistryKey parentKey, String subkeyName) { + RegistryKey subkey = parentKey.getSubKey(subkeyName); + if (subkey != null) { + System.out.println("delete : " + subkey.getPath()); + try { + parentKey.deleteSubTree(subkeyName); + System.out.println("delete : " + parentKey.getPath()); + grandKey.deleteSubTree(parentKey.getName()); + return 1; + } catch (RegistryException re) { + re.printStackTrace(); + } + } + return 0; + } public static void main(String[] args) { Registery reg = new Registery(); - RegistryKey premiumSoft = reg.getRegistery("\\Software\\PremiumSoft"); - reg.deleteSubTree(premiumSoft, "Data"); + RegistryKey premiumSoft = reg.getRegistery("\\Software\\PremiumSoft\\NavicatPremium"); + reg.deleteSubTree(premiumSoft, "Registration15XCS"); + reg.deleteSubTree(premiumSoft, "Update"); RegistryKey clsId = reg.getRegistery("\\Software\\Classes\\CLSID"); for (RegistryKey clsIdSubKey : clsId.getSubKeys()) { - reg.deleteSubTree(clsIdSubKey, "Info"); + reg.deleteSubTree(clsId, clsIdSubKey, "Info"); } } }