2010-12-20 44 views
1

行,所以我的工作與複選框一個集成的啓動管理器創建一個啓動管理器,到目前爲止,這是我有什麼,它這樣做的形式加載:嘗試使用.NET 2.0

RegistryKey hklm = Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run"); 
foreach (string Programs in hklm.GetValueNames()) 
{ 
    string GetValue = hklm.GetValue(Programs).ToString(); 
    ListViewItem item1 = listView1.Items.Add(Programs); 
    item1.SubItems.Add(hklm.Name.ToString().Replace("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion", "HKLM")); 
    item1.SubItems.Add(GetValue); 
} 

RegistryKey hkcu = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run"); 
foreach (string Programs in hkcu.GetValueNames()) 
{ 
    string GetValue = hkcu.GetValue(Programs).ToString(); 
    ListViewItem item2 = listView1.Items.Add(Programs); 
    item2.SubItems.Add(hkcu.Name.ToString().Replace("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion", "HKCU")); 
    item2.SubItems.Add(GetValue); 
} 

我知道它可能有點草率,但它似乎工作。現在知道什麼編號是,如果我在列表視圖中啓用了複選框...我怎麼能這樣做:

答:檢查那些是「啓用」/不檢查那些是「禁用「 B:當你檢查一個」啓用「它或取消選中一個」禁用「它時?

或!

(首選)創建一個上下文菜單(右鍵單擊菜單),用於禁用和重新啓用每個條目(並禁用它意味着創建一個名爲「Disabled Start」的子鍵,以便將鍵移動並啓用它們將他們移回到以前的鍵)

我知道啓用/禁用,你可以將鑰匙移動到不同的子項,以保持安全,正確嗎?還是我有這個全錯?

回答

0

我同意你的意見。如果我是你,我的世界會這樣做。 :)

我認爲你可以將這些被禁用的鍵存儲到存儲在你的app目錄中的文件中。你知道,就像ini文件一樣。或者您可以使用自己創建的密鑰將它們存儲在註冊表中。所以你可以在卸載管理器時刪除它們。

0

那麼推薦的程序實際上是將這些條目保存到文本文件中。我強烈建議您使用Isolated Storage,如果您打算爲網絡構建這個功能,則更加強大。

我不知道很多關於這一點,但我覺得你也可以導出條目到文件(也可能是IsolatedStorageFiles)就像this傢伙似乎已經做(尋找「ExportKey」的方法),然後重新導入。請注意,在這種情況下,您仍然需要某種機制來記錄條目,以便您可以在列表視圖中顯示它們。

關於上下文菜單我認爲this可能是你想要的,但我只是谷歌它和運行Ubuntu,所以我不能真正嘗試過。