1.原理:需要开机自启动的程序,需要将其启动程序的路径写到注册表中指定的文件夹下
2. 写入注册表的方式有两种
a.在生成安装程序时配置
b.在程序运行时,动态配置。
方法一:在生成安装程序时配置
右击安装编辑程序,在“视图”菜单中,选择“注册表”。通过右键菜单新建"键",创建出如图所示的路径。

右键Run,新建“字符串值”。为右侧的key命名(在注册表中不能重名),并在属性中指定它的value值。
注:[TARGETDIR]表示在程序的安装路径。
方法二:在程序运行时指定是否开机启动
if (checkBox1.Checked) { string path = Application.ExecutablePath; RegistryKey rk = Registry.CurrentUser; RegistryKey rk2 = rk.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run"); rk2.SetValue("JcShutdown", path); rk2.Close(); rk.Close(); MessageBox.Show("开启成功"); } else { string path = Application.ExecutablePath; RegistryKey rk = Registry.CurrentUser; RegistryKey rk2 = rk.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run"); rk2.DeleteValue("JcShutdown", false); rk2.Close(); rk.Close(); MessageBox.Show("关闭成功"); }
转自: