如何覆盖已经打开的程序?急

yzhxxh 2004-06-07 11:58:07
我编的一个程序,将它放到服务器上,所有的客户都通过网络,直接运行服务器上的程序,但是我要进行程序升级,要将所有的客户端运行程序关掉才能覆盖,现在一点办法也没有,请各位大虾帮忙
...全文
148 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
loveghb 2004-06-12
  • 打赏
  • 举报
回复
如果是程序,你可以FindWindow,但是如果是非EXE呢?所以我觉得还是要提醒用户自己去关掉,然后再升级。
loveghb 2004-06-12
  • 打赏
  • 举报
回复
当然喽,你要提醒用户在更新前把所有的相关的程序都关掉啊。
:)
loveghb 2004-06-12
  • 打赏
  • 举报
回复
可以覆盖正在运行的程序!我肯定看到过!
但是我现在忘记了。
你可以做一个专门用来update的程序啊,它本身不用跟新。
然后你可以用它来把其他程序下载下来然后更新啊?
为什么不呢?
benny87 2004-06-09
  • 打赏
  • 举报
回复
要是运行的时候文件可以覆盖,那windows就更不安全了,windows就不能用了!
pankun 2004-06-08
  • 打赏
  • 举报
回复
动态升级客户端可执行文件的过程一般为:
客户端下载升级文件(此时下载的要更新的EXE文件为其它名字,比如说client.exe.update)
创建.bat文件,关闭当前进程,并执行.bat文件
在bat文件中删除客户端,并把下载的文件更名为客户端可执行文件的名字以完成升级
visual_cjiajia 2004-06-08
  • 打赏
  • 举报
回复
估计不行 因为瑞星也是关闭 这是操作系统可执行文件运行时规定
yzhxxh 2004-06-08
  • 打赏
  • 举报
回复
能不能不关闭当前进程的情况下,强制覆盖升级?
ahjoe 2004-06-08
  • 打赏
  • 举报
回复
强制覆盖是不行的。如果通过直接访问磁盘覆盖了文件,正在执行的程序可能出错的。

有一个办法,重启时覆盖。

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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