开启新的程序后,如何关闭上一个程序窗口,我主要是想进行自动升级
不知道大家明白我的意思不?

解决方案 »

  1.   

    就象把球在两手之间扔来扔去一样:A程序运行后,检测有没有可用的更新;如有,就启动更新程序B,在更新程序B启动时,杀掉A程序的进程;更新完毕,用B程序启动A程序,并关掉B程序。
      

  2.   


    关键是 更新程序B启动时,杀掉A程序的进程这一步时,如何去杀A程序,A和B有什么关系,用什么方式去实现最适用?
    能写一段代码吗?》
      

  3.   

    (*  给你弄个比较简单的方案吧。使用没问题。 至于如何杀进程,网上代码多如牛毛,只是你懒得搜而已 *){程序A:}  if True then begin  {如果检测到可用更新}
        ShellApi.ShellExecute(0, PChar('Open'), PChar('B.exe'), nil, PChar('c:\Test\'), SW_SHOWNORMAL);
        Application.Terminate;
      end;{程序B:}  if True then begin  {如果更新下载完毕}
        ShellApi.ShellExecute(0, PChar('Open'), PChar('A.exe'), nil, PChar('c:\Test\'), SW_SHOWNORMAL);
        Application.Terminate;
      end;{注意,A、B两个程序放在C:\Test目录下使用。}
      

  4.   

    恩,大体是这样的。不过我已经有更好的,同样谢谢lihuasoft