2010-06-17 107 views
1

我試圖從註冊表中的Local_Machine \ Software中刪除註冊表。我做了一個名爲「DeleteMe」的密鑰作爲測試來試用,但我無法實現它。嘗試刪除註冊表中的密鑰時出錯

我試過多個選項,他們都說「subkey」「subkeytree」和「value」不存在,但是他們確實存在!我希望我在這裏使用正確的術語。對於它的HKEY_LOCAL_MACHINE \ SOFTWARE \ DeleteMe,我希望它和所有的子鍵/值被刪除...(我希望關鍵是正確的術語,它們看起來就像文件夾,但右鍵單擊時,他們有選項「複製鍵名「)。

到目前爲止,我嘗試過的最好看的東西是這樣的,而且我以管理員身份在Windows上運行  7(但我希望它可以在任何操作系統下工作)。

string keyName = @"Software\DeleteMe"; 
using (RegistryKey key = Registry.LocalMachine.OpenSubKey(keyName, true)) 
{ 
    if (key == null) 
    { 
     MessageBox.Show("Not Found"); 
    } 
    else 
    { 
     key.DeleteSubKeyTree("DeleteMe"); 
    } 
} 
+0

你有想分享任何當前的代碼,所以我們可以針點您的具體問題? – Jeff 2010-06-17 01:38:23

+0

你有64位的操作系統嗎? – 2010-06-17 02:32:00

+0

是的,我做和iv想通了,它適用於CurrentUser ..但LocalMachine它的權限問題,有沒有辦法強制它刪除? – NightsEVil 2010-06-17 02:47:53

回答

1

查看StackOverflow上的此前的答案。一個相當不錯的總結過程。你在做什麼與此不同?

How to delete a registry value in C#

+0

是的四看那裏和每件事我試圖我得到「不能刪除一個子鍵樹,因爲子鍵不存在)所以我想即時失蹤的東西..不知道什麼壽。 – NightsEVil 2010-06-17 02:02:46

+0

再次 - 有任何代碼,我們可以看看,看看問題可能存在的地方?O/S?如果在Vista或Windows 7上以管理員身份運行應用程序? – Jeff 2010-06-17 02:17:36