/// <summary> /// 关闭应用程序并立即启动一个新实例 /// </summary> /// <param name="value">忽略</param> public static void Restart(this Application value) { string cmdLine = Environment.CommandLine; string cmdLineArgs0 = Environment.GetCommandLineArgs()[0]; int i = cmdLine.IndexOf(' ', cmdLine.IndexOf(cmdLineArgs0) + cmdLineArgs0.Length); cmdLine = cmdLine.Remove(0, i + 1); ProcessStartInfo startInfo = Process.GetCurrentProcess().StartInfo; startInfo.FileName = value.ExecutablePath(); startInfo.Arguments = cmdLine; value.Shutdown(); Process.Start(startInfo); }