开启新的程序后,如何关闭上一个程序窗口,我主要是想进行自动升级

delphi_new 2008-04-08 10:12:49
开启新的程序后,如何关闭上一个程序窗口,我主要是想进行自动升级
不知道大家明白我的意思不?
...全文
97 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
delphi_new 2008-04-08
  • 打赏
  • 举报
回复
恩,大体是这样的。不过我已经有更好的,同样谢谢lihuasoft
lihuasoft 2008-04-08
  • 打赏
  • 举报
回复


(* 给你弄个比较简单的方案吧。使用没问题。 至于如何杀进程,网上代码多如牛毛,只是你懒得搜而已 *)

{程序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目录下使用。}

delphi_new 2008-04-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lihuasoft 的回复:]
就象把球在两手之间扔来扔去一样:

A程序运行后,检测有没有可用的更新;如有,就启动更新程序B,在更新程序B启动时,杀掉A程序的进程;更新完毕,用B程序启动A程序,并关掉B程序。
[/Quote]

关键是 更新程序B启动时,杀掉A程序的进程这一步时,如何去杀A程序,A和B有什么关系,用什么方式去实现最适用?
能写一段代码吗?》
lihuasoft 2008-04-08
  • 打赏
  • 举报
回复
就象把球在两手之间扔来扔去一样:

A程序运行后,检测有没有可用的更新;如有,就启动更新程序B,在更新程序B启动时,杀掉A程序的进程;更新完毕,用B程序启动A程序,并关掉B程序。

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧