1

在我们的应用程序中,我们有不同的组件,并且注册表项将在组件名称中创建。

例如。

我们有一个名为 Notification 的组件,我们的注册表项如下

RegistryKey rKeyNotification = Registry.LocalMachine.OpenSubKey("SOFTWARE\\CompanyName\\ProdName\\Notification");

现在我想删除这个键和所有的子键。

我试图完全删除这个 rKeyNotification。但我找不到任何办法。

我正在尝试如下。

if (rKeyNotification != null) {

   rKeyNotification.DeleteSubKeyTree("Notification");
}

但是这件作品会寻找 RegistryKey rKeyNotification =Registry.LocalMachine.OpenSubKey("SOFTWARE\\CompanyName\\ProdName\\Notification\\Notification");

没有像rKeyNotification.DeleteSubKeyTree()

我应该总是上一级(Registry.LocalMachine.OpenSubKey("SOFTWARE\\CompanyName\\ProdName)然后只删除密钥吗?

4

1 回答 1

1

没有删除密钥本身的方法,但您可以Registry.LocalMachine直接使用:

string keyname = @"SOFTWARE\CompanyName\ProdName\Notification";
Registry.LocalMachine.DeleteSubKeyTree(keyname);
于 2012-06-01T09:57:17.873 回答