#region
        /// <summary> 
        /// 开机启动项 
        /// </summary> 
        /// <param name="Started">是否启动</param> 
        /// <param name="name">启动值的名称</param> 
        /// <param name="path">启动程序的路径 Application.ExecutablePath</param> 
        public static void RunWhenStart(bool Started, string name, string path)
        {
            Microsoft.Win32.RegistryKey HKLM = Microsoft.Win32.Registry.LocalMachine;
            Microsoft.Win32.RegistryKey Run = HKLM.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
            if (Started == true)
            {
                try
                {
                    Run.SetValue(name, path);
                    HKLM.Close();
                }
                catch { }
            }
            else
            {
                try
                {
                    Run.DeleteValue(name);
                    HKLM.Close();
                }
                catch { }
            }
        }
        #endregion


本文转载:CSDN博客