我正在开发一个VB6应用程序,它有许多可执行文件和一个Active X dll。
并且需要在c; lient机器中进行更新以便偶尔使用lates版本,我要求用户手动更新。
您能否建议我使用哪种方式从可以在线获取的文件中自动更新。
感谢。
答案 0 :(得分:1)
Windows Installer具有支持Patching and Upgrades的功能。使用这些技术,您可以创建各种级别的“升级”包。
您的应用程序需要一个单独的“更新”实用程序,该实用程序在用户批准更新时生成,可能是为了响应检查新版本后程序引发的提示。
此更新程序将检查当前版本和远程站点的更新目录以选择适当的程序包,将其下载到临时位置,启动Windows Installer以处理程序包(或程序包,有时您可能需要运行多个Installer运行),并清理临时位置。然后,您可能会提供重新安装更新的应用程序,或者在某些情况下需要重新启动。
这个更新程序将是常见的“安装引导程序”的一种奇特形式。你可以告诉它需要一些“智能”来告诉哪些软件包或软件包以什么顺序下载和安装,何时需要重新启动等等。这可能是基于它获得的下载“规则脚本”选择有效更新选项的一部分。
毕竟,有时您可以只应用次要升级或补丁升级,有时您需要更完整的安装或整个重新安装。
如果您的需求非常简单(只需要一个EXE,可能还有一些DLL和OCX--最好使用无reg的COM),您可能不需要这些长度。但是,当您开始添加其他注意事项,如多个程序,数据目录创建和安全设置,可能运行设置文件转换甚至数据库转换,DCOM,防火墙等配置,数据库驱动程序或提供程序等时,事情会很快变得复杂。简单的抓取和抓取更新过于复杂。
管理员权限/ UAC问题是一个因素,因此您可能需要处理权限提升。
这些都不是琐碎的事情。除了整个工作之外,还有一些人只是构建和测试这样的部署系统。
答案 1 :(得分:0)
如果你使用像Inno setup这样的东西安装应用程序,那么更新很简单,只需定期运行即可。 您可以通过检查网站/本地服务器来检测可用的新版本,或者只是在X天后提示运行更新。