怎么使软件具有"自动升级"功能?(200分)

  • 主题发起人 主题发起人 winmaster2
  • 开始时间 开始时间
你知道一个文件如果删除自己的吗
如果知道你就知道如何关了自己开个新的了
把自己复制到一个临时文件夹中
启动后关闭当前的,当前同时启动两个实例必须在自己的应用程序中
能保证两个自己可以同时运行,然后就按照你说的了
 
不会吧,你直接shellexecute不就行了,反正也是有个独立的程序来完成升级过程的
 
我有一个构件,能实现liveupdate功能的。
 
to Ridolph:
能否给我一个?mailto:kylix2001@sina.com
3X。
 
也给我一个:tunlee@sina.com
 
关了旧的,开个新的,不可以在主FORM中的onClose里加入shellExecute吗?
当然需要临时加入这个事件的,这不难吧!
 
方法好象有很多.
 
同意maming方法有好多种用如:ShellExecute运行新的程序,新程序广播一条消息给旧的,
旧的可以关闭之后覆盖旧的程序不就行了吗,太简单了! :)
 
各位去下载吧:
<a href="http://www.ex-sun.com/ridolph/DirectUpdate.zip">
http://www.ex-sun.com/ridolph/DirectUpdate.zip</a>
 
怎么下不了啊?
 
简单一点的办法就是用另一个程序来作主程序的更新工件,更新完成后就启动新的主程序
或重启,应该就可以了。

这另一个程序是在当主程序需要更新时启动它,之后就关掉主程序。

OK?
 
在三层体系中我是这样实现的:
1.有个真正的外壳程序,不完成系统的实际功能,只负责打开、关闭程序、唯一实例、授权认
证和连接到服务器,总是在启动时检测服务器是否有更新的版本,如果有的话直接下载。
2.这个外壳程序是通用的,只需要改动这个外壳程序在注册器中的某个主键键值即可换成另
外一个程序使用了。。
3.其实所有的实际模块都是DLL,全部都是动态装入,换新版本后重新装载一下即可。所以
没有什么问题了。
4.整个过程是自动的,对用户完全透明。
 
2ccc.com 我做了一个简单的例子,可以检查版本。
 
王寒松大侠曾经答复过相同的问题,还是源程序,在以前的贴子中查一下吧
 
可能你不知道用户把应用程序放哪去了
 
AutoUpdate:
ftp.51delphi.com
 
写一个带窗口的DLL不就行了人家也不能单独来运行你的DLL
 
shellapi
有段代码,自已检索吧
 
后退
顶部