如何在不退出应用程序的情况下重新启动c#应用程序

时间:2015-04-28 02:50:30

标签: c# windows-forms-designer

如何重新启动c#应用程序或致电

    [STAThread]
    static void Main()
    {

        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new ConnectPage());

    }

,没有退出该计划?

我尝试了process.Start()方法,但此方法启动了另一个无法再调试的进程。

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

  [STAThread]
  static void Main(
  {

    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    do{
      var page = new ConnectPage();
      Application.Run(page);
    } while (page.SomePropertyOrMethodToKeepAnOptionToRestart);
}

请记住,这不是真正的重启,尤其是当您将内容存储在静态属性或字段中时。

或者你可以按照以下方式做点什么:

System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Location);
Application.Exit();

然后在Main添加

#if DEBUG
  System.Diagnostics.Debugger.Launch();
#endif