在程序里需要退出当前winform程序,并重新启动,刚开始用了application.restart()方法,但是会出现错误“引发的异常:“System.Deployment.Application.InvalidDeploymentException”(位于 System.Deployment.dll 中)”,虽然不影响程序正常运行,但是看了也非常不舒服。
于是在网上搜索结局办法,通过使用下面的代码可以实现程序重启功能并且不会报错。
Application.ExitThread();
Thread RestartThread = new Thread(new ParameterizedThreadStart(run));
object appName = Application.ExecutablePath;//获取应用程序路径和名称
Thread.Sleep(100);
RestartThread.Start(appName);
private void run(Object obj)
{
Process ps = new Process();
ps.StartInfo.FileName = obj.ToString();
ps.Start();
}
原文地址:https://www.cnblogs.com/Johnson2580/p/12696200.html
时间: 2024-11-16 04:51:31