例如a.exe上有个按钮,按下后,调用b.exeb.exe上一按钮按下,关闭a.exe,更新a.exe
然后重新启动a.exe,并且关闭本身即b.exe不知道如何写,也使用了 private void Restart()
    {
        Thread thtmp = new Thread(new ParameterizedThreadStart(run));
        object appName = Application.StartupPath+"\\b.EXE" ;
        Thread.Sleep(2000);
        thtmp.Start(appName);    }    private void run(Object obj)
    {
        Process ps = new Process();
        ps.StartInfo.FileName = obj.ToString();
        ps.Start();
    }可是依然行不通,忘前辈能否写个例子,谢谢

解决方案 »

  1.   

    a按钮代码
    System.Diagnostics.Process.Start(Application.StartPath + "\\b.exe");b按钮代码
    查找a进程,kill掉a
    foreach (System.Diagnostics.Process p in System.Diagnostics.Process.GetProcesses())
                {
                    if (p.ProcessName == "a")
                    {
                        p.Kill();
                        p.WaitForExit();
                        break;
                    }
                }
    然后更新a,
    再启动a
    System.Diagnostics.Process.Start(Application.StartPath + "\\b.exe");
    最后b关闭,this.Close();