程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 程序開機自動啟動

程序開機自動啟動

編輯:.NET實例教程
//RunWhenStart.cs
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Win32;
using System.Windows.Forms;

namespace Walter.K.Wang
{
    /// <summary>
    /// 
    /// </summary>
    public class RunWhenStart
    {
        /// <summary>
        /// 開機自動啟動程序
        /// </summary>
        /// <param name="Started">true為自動啟動,false為不自動啟動</param>
        public static void Run(bool Started)
        {
            RegistryKey HKLM = Registry.LocalMachine;
            RegistryKey Run = HKLM.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
            if (Started == true)
            {
                try
                {
                    Run.SetValue(Application.ProductName, Application.StartupPath + @"" + Application.ProductName + @".exe");
                    HKLM.Close();
                }
                catch (Exception Err)
                {
                    throw new Exception(Err.Message);
                }
            }
            else
            {
                try
                {
                    Run.DeleteValue(Application.ProductName);
                    HKLM.Close();
                }
                catch (Exception Err)
                {
                    throw new Exception(Err.Message);
                }
            }
        }

        /// <summary>
        /// 檢測程序是否自動啟動
        /// </summary>
        /// <returns>自動啟動為true,不自動啟動為false</returns>
        public static bool Getstate()
        {
            RegistryKey hkml = Registry.LocalMachine;
            string[] aimnames;
            string keyData = string.Empty;
            hkml = Registry.LocalMachine.OpenSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun", true);
            aimnames = hkml.GetValueNames();
            bool getin = false;
            foreach (string aimKey in aimnames)
            {
                if (aimKey == Application.ProductName)
        &nbsp;       {
                    getin = true;
                }
            }
            return getin;
        }
    }
}


//調用代碼
if (Walter.K.Wang.RunWhenStart.Getstate() == false)
...{
     Walter.K.Wang.RunWhenStart.Run(true);


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved