win7自動壁紙切換小工具AutoDesk(四)-開機啟動


實現開機啟動最簡單的方法是在注冊表里面寫入一個鍵值就可以了。

由於win7對安全要求跟xp不同,寫入注冊表往往繞不過UAC,需要程序提升權限,我開始也在這里走了不少彎路,后來在msdn論壇上面看到提示,在currentuser下面的鍵值寫入是不需要權限的,可以直接寫,我看網上很多帖子都寫在localmochine下面,走了彎路。

http://social.msdn.microsoft.com/Forums/zh-CN/visualcshartzhchs/thread/a3c87b19-3860-4fbb-96e9-64295860483a/

具體鍵值就是HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

下面兩個函數分別實現寫入鍵值和刪除鍵值:

 1 private void regAutoStart()
 2         {
 3             RegistryKey reg;
 4             reg = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
 5             reg.SetValue("AutoDesktop", Application.ExecutablePath);
 6             reg.Close();
 7         }
 8 
 9         private void unRegAutoStart()
10         {
11             RegistryKey reg;
12             reg = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
13             reg.DeleteValue("AutoDesktop");
14             reg.Close();
15         }

由於我在外層有異常的判斷,這里就簡單的實現功能了。是不是很簡單,關鍵是CurrentUser。

我查看過QQ的實現方式,當你選擇qq隨機器啟動時,就會在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下面看到QQ2009(我的qq版本是2009)的鍵值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM