我需要为我的应用程序创建一个补丁程序,
这是很小的,但是我需要每天或每周更新一次
xdelta和其他对象如何工作?
我已经阅读了有关这些内容,但我不太了解
完全不应该提示用户

最佳答案

好的,这篇文章被标记在meta上,以给出给出的答案,所以我将对此进行权衡。

xdelta是一个二进制差异程序,没有为您提供完整的图像,而是仅提供您已更改的内容和更改的位置。文本差异的示例在文本行之前带有+和-符号,向您显示在新版本中已添加或删除了这些符号。

有两种更新二进制镜像的方法:使用您自己的程序替换它或使用某种形式的程序包管理替换它。例如,Linux系统使用rpm等将更新推送到软件包。在Windows环境中,如果您不在公司网络中,则选择受安装内容的限制。如果是这样,请尝试使用WSUS和MSI包装。这样可以使您的生活更轻松,也可以像别人提到的那样单击ClickOnce。

但是,如果您不是这样,则需要牢记以下几点:

  • 您需要成为管理员才能更新某些文件夹中的所有内容,就像其他人所说的那样。我会强烈鼓励您接受此行为。
  • 如果用户是管理员,则可以提出检查更新。然后,您可以执行以下两项操作之一。您可以下载应用程序的全新版本,然后将其写入硬盘上的镜像(即文件-请记住镜像已加载到内存中,以便您可以重新编写自己的程序文件)。然后,您需要告诉用户更新成功,然后重新加载程序,因为新镜像将有所不同。
  • 或者,如果需要考虑带宽,可以应用差异。可能不是您需要的情况,但是您需要从客户端程序中知道两个版本之间的差异,以便更新服务器为您提供正确的补丁程序。否则,差异可能不会成功。

  • 我认为xdelta不会为您带来任何好处。只需替换整个图像。

    如果完全不提示用户,请编辑,只需重新加载应用程序即可。但是,我强烈建议通知用户您正在其网络上谈话,并征得其许可/启用手动更新模式,否则像我这样的人将阻止它。

    10-08 16:22