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

delphi_new 2008-04-08 10:12:49
开启新的程序后,如何关闭上一个程序窗口,我主要是想进行自动升级
不知道大家明白我的意思不?
...全文
37 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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程序。
回复
相关推荐
发帖
网络通信/分布式开发
创建于2007-08-02

1573

社区成员

Delphi 网络通信/分布式开发
申请成为版主
帖子事件
创建了帖子
2008-04-08 10:12
社区公告
暂无公告