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");  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM