【问题标题】:Auto Update Solution for VB6 ApplicationVB6应用程序自动更新解决方案
【发布时间】:2013-01-31 07:12:33
【问题描述】:

我正在开发一个具有许多可执行文件和一个 Active X dll 的 VB6 应用程序。

并且有时会在 c;lient 机器中更新到最新版本,我要求用户手动更新。

您能否建议我一种方法,使用该方法我可以从可在线获得的文件中自动更新它。

谢谢。

【问题讨论】:

标签: vb6 synchronization auto-update


【解决方案1】:

Windows Installer 具有支持Patching and Upgrades 的功能。使用这些技术,您可以创建各种级别的“升级”包。

您的应用程序需要一个单独的“更新”实用程序,该实用程序在用户批准更新时生成,可能是为了响应您的程序在检查新版本后提出的提示。

此更新程序将检查当前版本和远程站点的更新目录以选择适当的包,将其下载到临时位置,启动 Windows Installer 以处理包(或包,有时您可能需要运行多个安装程序运行),并清理临时位置。然后您可能会提出重新启动更新的应用程序或在某些情况下需要重新启动。

此更新程序将是常见“安装引导程序”的一种奇特形式。正如您所知道的那样,它需要一些“智能”来告诉以什么顺序下载和安装一个或多个软件包,何时需要请求重新启动等。这可能基于它获得的下载的“规则脚本”选择有效更新选项的一部分。

毕竟,有时您可以只应用次要升级或补丁升级,有时您需要更完整的安装或整个重新安装。

如果您的需求非常简单(只需一个 EXE,可能还有一些 DLL 和 OCX - 最好使用无注册 COM),您可能不需要这么多。但是,当您开始添加其他考虑因素时,例如多个程序、数据目录创建和安全设置、可能运行设置文件转换甚至数据库转换、DCOM、防火墙等配置、数据库驱动程序或提供程序等,事情会很快变得复杂。对于简单的抓取和抓取更新来说太复杂了。

管理员权限/UAC 问题是一个因素,因此您可能必须处理权限提升问题。

这些都不是小事。有些人只是将构建和测试此类部署系统作为他们的全部工作。

【讨论】:

    【解决方案2】:

    如果您使用 Inno setup 之类的东西来安装应用程序,那么更新很简单,只需定期运行即可。 您可以通过检查网站/本地服务器来检测是否有可用的新版本,或者在 X 天后提示运行更新。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-30
      • 1970-01-01
      • 1970-01-01
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 2010-11-30
      相关资源
      最近更新 更多