zoukankan      html  css  js  c++  java
  • WinForm 之 应用程序开机自启动设置方法

    一、原理

      需要开机自启动的程序,需要将其启动程序的路径写到注册表中指定的文件夹下。

    二、实现方式

      方法1:在生成安装程序时配置;

      方法2:在程序运行时动态配置。

    三、在生成安装程序时配置

      1、右击安装编辑程序,在“视图”菜单中,选择“注册表”。依次打开键“HKEY_CURRENT_USER”→“Software”,如下图:

       

      2、右键点击“Software”键→“新建(N)”→“键(K)”,创建“Microsoft”键。

      3、如步骤2方式依次创建“Windows” 键→“CurrentVersion”键→“Run”键。

      4、右键Run,新建“字符串值”。为右侧的key命名(在注册表中不能重名),并在属性中指定它的value值,完成后如下图所示:

      

      注:[TARGETDIR]表示在程序的安装路径。

    四、在程序运行时动态配置

      在程序运行时,通过调用如下方法实现开机启动。需引用命名空间 Microsoft.Win32。

    /// <summary>  
    /// 修改程序在注册表中的键值  
    /// </summary>  
    /// <param name="flag">1:开机启动</param>  
    private void StartUp(string flag)  
    {  
        string path=Application.StartupPath;  
        string keyName = path.Substring(path.LastIndexOf("\") + 1);  
        Microsoft.Win32.RegistryKey Rkey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run"true);  
      
        if (flag.Equals("1"))  
        {  
            if (Rkey == null)  
            {  
                Rkey = Microsoft.Win32.Registry.CurrentUser.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run");  
            }  
            Rkey.SetValue(keyName, path @"PeisDoctorHZ.exe");  
        }  
        else  
        {  
            if (Rkey != null)  
            {  
                Rkey.DeleteValue(keyName, false);  
            }  
        }  
    }  

      注:该程序的启动项设置到HKEY_Current_User 下。如果想改在HKEY_LOCAL_MACHINE,只需将 CurrentUser 改为 LocalMachine,即

    Rkey = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run");  
  • 相关阅读:
    uml 类图
    Java IO流
    Spring 创建Bean的 三种方式
    linux+jmeter+python基础+抓包拦截
    接口测试
    HDU 1159 Common Subsequence(POJ 1458)
    HDU 1160 FatMouse's Speed
    HDU 4540 威威猫系列故事——打地鼠
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1176 免费馅饼
  • 原文地址:https://www.cnblogs.com/xinaixia/p/6194104.html
Copyright © 2011-2022 走看看