2013-03-25 21 views
7

サブキーを持つHKCUのキーを削除しようとすると、エラーが発生します。サブキーでレジストリキーを削除しようとすると、エラーが発生する

using (RegistryKey regkey = Registry.CurrentUser.OpenSubKey(@"Software\Policies\", true)) 
{ 
    if (regkey.OpenSubKey("Google") != null) 
    { 
     regkey.DeleteSubKey("Google"); 
    } 
} 

エラー私が手::ここで

は、私が使用していたコードである

レジストリキーがサブキーを持っており、再帰的削除し、この方法でサポートされていません。

どのように私はそれを克服できますか?

答えて

18

RegistryKey.DeleteSubKeyTreeメソッドを使用します。

RegistryKey.DeleteSubKeyTree Method (String)

再帰的サブキーとその子のサブキーを削除します。

using(RegistryKey regkey = Registry.CurrentUser.OpenSubKey(@"Software\Policies\", true)) 
{ 
    if (regkey.OpenSubKey("Google") != null) 
    { 
     regkey.DeleteSubKeyTree("Google"); 
    } 
} 
0
using(var regkey = Registry.CurrentUser.OpenSubKey(@"Software\Policies\", true)) 
{ 
    regkey?.DeleteSubKeyTree("Google"); 
} 
関連する問題