zoukankan      html  css  js  c++  java
  • C#中使用DOS命令关闭当前正在运行的程序并重新启动

             在C#中可以利用通过Pocess.Start调用Dos命令来完成很多操作,而且非常方便。例如关闭当前的应用程序,重新启动电脑等。

            下面介绍几个常用的命令:

    //重新启动电脑的命令

    private void RestartPC()

    {

            //重启电脑的命令发出
            Process.Start("shutdown.exe", "-r");
            //关闭所有相关进程
            Process.GetCurrentProcess().Kill();

    }

    //关闭电脑的命令

    private void ShutDownPC()

    {

            //重启电脑的命令发出
            Process.Start("shutdown.exe");
            //关闭所有相关进程
            Process.GetCurrentProcess().Kill();

    }


    //重载关闭计算机函数,可以设定倒计时

            public static void ShutDownPC(string time)
            {
                string s = "-s -t " + time;
                Process.Start("shutdown.exe", s);

            }

            //注销登录

            public static void LogOff()
            {
                Process.Start("shutdown.exe", "-l");
            }

             //撤销关闭计算机

             public static void CancelShutDown()
            {
                Process.Start("shutdown.exe", "-a");
            }


    //开启某个应用程序,例如开启升级程序

        /// <summary>
        /// 启动升级程序
        /// </summary>
        private void StartUpdateSys()
            {
            //启动升级程序
            Process[] VAproc = Process.GetProcessesByName("VersionAgent");
            if (VAproc.Length == 0)
                {
                Process proc = new Process();
                proc.StartInfo.FileName = "VersionAgent.exe";
                proc.StartInfo.Arguments = "/p1     /b38400     /fstock     /mr ";
                proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
                proc.Start();
                }
            }


                /// <summary>
                /// 设置程序开机运行
                /// </summary>
                /// <param name="started">是否开机运行</param>
                /// <param name="exeName">要运行的EXE程序名称(不要拓展名)</param>
                /// <param name="path">要运行的EXE程序路径</param>
                /// <returns>成功返回真,否则返回假</returns>
    
                public bool RunWhenStart(bool started, string exeName, string path)
                {
                    RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);//打开注册表子项
                    if (key == null)//如果该项不存在的话,则创建该子项
                    {
                        key = Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");
                    }
                    if (started == true)
                    {
                        try
                        {
                            key.SetValue(exeName, path);//设置为开机启动
                            key.Close();
                        }
                        catch
                        {
                            return false;
                        }
                    }
                    else
                    {
                        try
                        {
                            key.DeleteValue(exeName);//取消开机启动
                            key.Close();
                        }
                        catch
                        {
                            return false;
                        }
                    }
                    return true;
                }







  • 相关阅读:
    .net程序控制post数据 需登陆后保持session的方法
    简单分页查询SQL语句
    通过文本编辑器提交报从客户端中检测到有潜在危险的 Request.Form 值的错误
    Visual Studio 很卡、重置初始状态
    Jquery获取url中的参数
    Centos 6 安装桌面环境
    Jquery使用ajax实例
    一般处理程序使用session
    如何简单的发布一个react组件npm包
    BFC、IFC、GFC 和 FFC的概念
  • 原文地址:https://www.cnblogs.com/kevinGao/p/2231519.html
Copyright © 2011-2022 走看看