3

我可以使用 NSIS 的 Vpatch 生成从一个版本到另一个版本的补丁文件。假设我有 mydll.dll 版本 1,并且我有一个补丁可以将其更新到版本 2。然后我又有一个新版本,因此我生成了另一个补丁来将其更新到版本 3。

但令我困扰的是,如果用户取消更新到版本 2 等等会怎样。然后我的最新版本假设是版本 20。用户决定更新到版本 20。有没有办法生成类似于累积性质的补丁?而用户可以从任何旧版本跳转到最新版本(即版本 3 到版本 20)而无需通过其间的版本?

我在 vpatch 的文档中阅读了这一行 ---> “如果您希望能够将版本 1 和 2 升级到版本 3,您可以将 1 > 3 和 2 > 3 补丁放在一个文件中。” 但是我该怎么做呢?

如果我已经有 30 个版本怎么办。这是否意味着我必须创建一个参数是旧文件(版本 1-29)和新文件(版本 20)的补丁?

4

2 回答 2

1

VPatch 本身就是一个开源项目,所以你可以在他们的论坛上提问。那个人写的说你可以问他问题。他的页面有一个链接到电子邮件表单:http ://www.tibed.net/vpatch/

于 2010-05-28T08:07:41.480 回答
1

我会说你有两个选择:

  • 每次你有一个新版本时,你都会为新版本的每个以前的版本打一个补丁
  • GENPAT 只是从 New-1 到 New(附加到已经有 New-2 到 New-1 等的补丁文件)并在安装时继续调用 vpatch::vpatchfile 直到返回值为“OK,新版本已经安装”而不仅仅是“OK”(为此,您不需要所有旧版本的存档,但如果用户跳过了许多更新,则应用更新将需要更长的时间)
于 2010-05-30T00:03:26.560 回答