当前位置:编程学习 > C#/ASP.NET >>

C#中设置开机自动运行和关机

让软件开机自动运行或者设置自动关机,大部分软件都有这种功能。如何实现呢,其实很简单,开机运行,只需要设置注册表就可以了,关机则调用CMD命令:shutdown -s -t,如下:
开机自动运行:


/// <summary>  
/// 设置开机运行  
 /// </summary>  
public void AutoRun() 

    RegistryKey runItem = 
    Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true); 
 
    if (runItem == null) 
    { 
        run.SetValue("exe的名字","exe的路径"); 
    } 

/// <summary>  
/// 取消开机运行  
 /// </summary>  
public void DeleteAutoRun() 

    RegistryKey runItem = 
    Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true); 
 
    if (runItem != null) 
    { 
        runItem.DeleteSubKey("exe的名字"); 
    } 

        /// <summary>
        /// 设置开机运行
         /// </summary>
        public void AutoRun()
        {
            RegistryKey runItem =
            Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true);

            if (runItem == null)
            {
                run.SetValue("exe的名字","exe的路径");
            }
        }
        /// <summary>
        /// 取消开机运行
         /// </summary>
        public void DeleteAutoRun()
        {
            RegistryKey runItem =
            Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run", true);

            if (runItem != null)
            {
                runItem.DeleteSubKey("exe的名字");
            }
        }
 
设置关机:www.zzzyk.com


        public static string ExecuteCmd(string command) 
        { 
            string output = ""; //输出字符串     
            if (command != null && !command.Equals("")) 
            { 
                Process process = new Process();//创建进程对象     
                ProcessStartInfo startInfo = new ProcessStartInfo(); 
                startInfo.FileName = "cmd.exe";//设定需要执行的命令     
                startInfo.Arguments = "/C " + command;//“/C”表示执行完命令后马上退出     
                startInfo.UseShellExecute = false;//不使用系统外壳程序启动     
                startInfo.RedirectStandardInput = false;//不重定向输入     
                startInfo.RedirectStandardOutput = true; //重定向输出     
                startInfo.CreateNoWindow = true;//不创建窗口     
                process.StartInfo = startInfo; 
                process.Start(); 
            } 
        } 
        public static string ExecuteCmd(string command)
        {
            string output = ""; //输出字符串  
            if (command != null && !command.Equals(""))
            {
                Process process = new Process();//创建进程对象  
                ProcessStartInfo startInfo = new ProcessStartInfo();
                startInfo.FileName = "cmd.exe";//设定需要执行的命令  
                startInfo.Arguments = "/C " + command;//“/C”表示执行完命令后马上退出  
                startInfo.UseShellExecute = false;//不使用系统外壳程序启动  
                startInfo.RedirectStandardInput = false;//不重定向输入  
                startInfo.RedirectStandardOutput = true; //重定向输出  
                startInfo.CreateNoWindow = true;//不创建窗口  
                process.StartInfo = startInfo;
     &

补充:软件开发 , C# ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,