zoukankan      html  css  js  c++  java
  • C#/WPF程序开机自动启动

    最近一个C/S项目客户要求开机自启的功能,网上找了一些方法,不顶用;最后自己去翻书,找到了这段代码,亲测可用,Wpf环境下需要改下获取程序目录的方式即可,Winform直接可用。

    复制代码
     1             #region 设置开机自启
     2             string strName = AppDomain.CurrentDomain.BaseDirectory + "AutoRunPro.exe";//获取要自动运行的应用程序名
     3             if (!System.IO.File.Exists(strName))//判断要自动运行的应用程序文件是否存在
     4                 return;
     5             string strnewName = strName.Substring(strName.LastIndexOf("\") + 1);//获取应用程序文件名,不包括路径
     6             RegistryKey registry = Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);//检索指定的子项
     7             if (registry == null)//若指定的子项不存在
     8                 registry = Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run");//则创建指定的子项
     9             registry.SetValue(strnewName, strName);//设置该子项的新的“键值对”
    10 
    11             if (MessageBox.Show("设置完毕") == DialogResult.OK)
    12             {
    13                 RefreshSystem();//刷新系统
    14             }
    15             #endregion
    复制代码
    复制代码
     1             #region 取消开机自启
     2             string strName = AppDomain.CurrentDomain.BaseDirectory + "AutoRunPro.exe";//获取要自动运行的应用程序名
     3             if (!System.IO.File.Exists(strName))//判断要取消的应用程序文件是否存在
     4                 return;
     5             string strnewName = strName.Substring(strName.LastIndexOf("\") + 1);///获取应用程序文件名,不包括路径
     6             RegistryKey registry = Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);//读取指定的子项
     7             if (registry == null)//若指定的子项不存在
     8                 registry = Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run");//则创建指定的子项
     9             registry.DeleteValue(strnewName, false);//删除指定“键名称”的键/值对
    10             if (MessageBox.Show("设置完毕") == DialogResult.OK)
    11             {
    12                 RefreshSystem();
    13             }
    14             #endregion
    复制代码
     
    http://www.cnblogs.com/henryzong/p/6209797.html
  • 相关阅读:
    1.第一个java程序
    5.第三章 运算符和基本选择结构
    7.关系运算符
    4.第二章章末总结
    3.计算员工工资
    JAVA并发操作——Thread常见用法(Sleep,yield,后台线程)
    JAVA 对象序列化(一)——Serializable
    JAVA 线程中的异常捕获
    JAVA反射机制实例
    JAVA 对象序列化(二)——Externalizable
  • 原文地址:https://www.cnblogs.com/cmblogs/p/9020675.html
Copyright © 2011-2022 走看看