C# 实现程序开机自启动、读取注册表的exe路径

做一个检测程序,但不想每次开机手动的方式去打开程序,方法可以把你要开启的程序写进注册表,这样电脑启动后会自动读取注册表信息现实开机自启动。废话不多说,直接看代码

  /// <summary>
        /// 开机自启动
        /// </summary>
        private void WriteRegistry()
        {
            string strName = Environment.CurrentDirectory;  // 取得或设置当前工作目录的完整限定路径

            string files = Directory.GetFiles(strName, "XXX.exe", SearchOption.TopDirectoryOnly).FirstOrDefault();
            if (File.Exists(files))
            {
                string strNewName = Path.GetFileName(files);
                RegistryKey reg = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
                if (reg == null)
                {
                    reg = Registry.CurrentUser.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");
                }
                else
                {
                    if (reg.GetValue(strNewName) == null)
                    {
                        reg.SetValue(strNewName, files);
                    }
                }
            }
        } 

从注册表获取程序工作路径

 /// <summary>
        /// 获取工作路径
        /// </summary>
        /// <returns></returns>
        public string RedegitApp() {
            RegistryKey reg = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);//读取注册表
            if (reg.GetValue("DeployClien.exe") != null)
            {                
                return Directory.GetParent(reg.GetValue("XXX.exe").ToString()).ToString();//获取exe所在目录(x:\xxx\xxx\)
            }
            else
            {
                return “ ”;
            }
        }

 

   另外补充点 设置电脑自启

     /// <summary>
        /// 重启电脑
        /// </summary>
        public void ResetComputer() {                              
                Process.Start("shutdown.exe", "-r -t 120");          
        }

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值