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()

常に1レベル上に移動して(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 に答える