c#控制台 如何自动重启 求大神给代码

c#控制台 如何自动重启 求大神给代码
2025-02-23 15:47:44
推荐回答(2个)
回答1:

.Net 程序是应用域里面的,所以无法单个进程自动重启。你需要写个守护进程。
比如,你现在的是控制台程序 A,那么你要写个守护程序 B。当你打算 A 重启的时候,由 A 启动 B,然后 B 等 A 结束,然后 B 启动 A,然后 B 退出。
思路大致如上。

回答2:

先说思路:

1、获取当前程序的可执行文件的路径

2、运行该路径(保险起见,可以不直接运行该路径,而是创建该可执行文件的快捷方式,并运行该快捷方式,在本程序结束前,删除快捷方式;但这与本问题关系不大,请自行百度)

3、关闭当前程序

代码如下:(先引用程序集:System.Windows.Forms)

using System;
using System.Diagnostics;
using System.Windows.Forms;
namespace 命名空间_
{
    class Program
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("按下回车键后重启本程序……");
            Console.ReadLine();
            string path = Application.ExecutablePath;//获取可执行文件路径
            Process.Start(path);//再次运行程序
            Environment.Exit(0);//关闭当前程序
        }
    }
}