1

我在 qt 中制作了一个小软件,它只有一个可执行文件和几个 dll。我希望有人帮助我了解如何更新 exe 和 dll,而不必替换整个 exe 和 dll,而是编写您对现有 exe 或 dll 所做的更改。

4

3 回答 3

2

您可能对Courgette感兴趣,它是 Google 用于向 exe 文件提供小差异的工具。

其他链接

于 2011-05-06T09:09:40.743 回答
1

如果您对代码中的特定 DLL 或 EXE 进行更改,则必须重新编译并重建 DLL 或 EXE,然后覆盖现有的。如果不这样做,我看不出你怎么可能对现有的 exe 或 DLL 进行更改。

于 2011-05-06T09:03:38.440 回答
1

您可以发布一个补丁文件.exe,其中包含用户现有版本的和.dll文件与他们现在需要使用的文件之间的差异。

当然,您的构建过程仍然会生成全套二进制文件1,但是生成和分发补丁文件意味着您需要部署的东西更少。

但是,这样做并不常见,因为它对最终用户来说更加复杂,并且(除非您的分布很大)没有非常明显的好处。


注 1为什么这很重要?对你来说有什么区别:

  • 旧文件存在
  • 工具链用新信息覆盖文件
  • 现在存在新文件

  • 旧文件存在
  • 工具链仅修改现有文件中更改的字节
  • 现在存在新文件

出于任何实际目的,我看不出第二个会有什么好处。

于 2011-05-06T09:11:35.317 回答