我創建了一個需要記住一些值(某些複選框的狀態(已選中/未選中))的應用程序。問題如下:註冊表項在機器重新啓動後不再持續
如果我選中/取消選中複選框並重新啓動應用程序,一切都很好。 如果我選中/取消選中複選框並重新啓動計算機,啓動時(我已經在windows激活的情況下運行),應用程序不記得實際值,而是之前的值。
現在這裏是奇怪的部分。如果我在第二個場景上關閉應用程序並再次打開它,則值設置正確(即使我不更改它們)。
另外: 如果我檢查/取消選中複選框並重新啓動,但沒有啓動窗口複選框激活,如果我在Windows啓動後打開應用程序一切都很好。
唯一的錯誤是當Windows自己啓動它時。
這裏是啓動該程序的窗口組成部分:
private void RunStartup(Boolean RunOnStartup)
{
Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (RunOnStartup == true)
{
key.SetValue("app", Application.ExecutablePath.ToString());
}
else
{
key.DeleteValue("app", false);
}
}
哇,那個評論很久了。請參閱下面的答案。 – 2011-05-03 19:35:13