设置程序开机自启动
最近项目需要,学习了一下让自己的程序开机自启动,大概有两种方式,一种是在程序中实现(需要至少运行一次程序),另一种是直接在注册表中添加项。
1. 程序中实现:
1 /// <summary> 2 /// 开机启动项 3 /// </summary> 4 /// <param name=\"Started\">是否启动</param> 5 /// <param name=\"name\">要启动的程序名称</param> 6 /// <param name=\"path\">启动程序的路径</param> 7 public static void RunWhenStart(bool Started, string name, string path) 8 { 9 RegistryKey HKLM = Registry.LocalMachine; 10 RegistryKey Run = HKLM.CreateSubKey(@\"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\"); 11 if (Started == true) 12 { 13 try 14 { 15 Run.SetValue(name, path); 16 HKLM.Close(); 17 } 18 catch (Exception Err) 19 { 20 MessageBox.Show(Err.Message.ToString(), \"MUS\", MessageBoxButtons.OK, MessageBoxIcon.Error); 21 } 22 } [Page] 23 else 24 { 25 try 26 { 27 Run.DeleteValue(name); 28 HKLM.Close(); 29 } 30 catch (Exception) 31 { 32 // 33 } 34 } 35 }
2. 注册表中实现:在注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\下面添加字符串值,名字为程序名,值为exe文件的全路径。重启电脑就会见证奇迹!