开发者

software update process

I have made a small software in qt and its only one executable and a few dlls.I want somebody to help me understand how one goes about updating an exe and the dlls without having to replace the entire exe and the dlls but instead,write 开发者_Go百科the changes you have made to an existing exe or dll.


You can be interested in Courgette which is what Google uses for delivering small diffs to exe files.

Other link


You can release a patch file that contains the differences between the user's existing version of the .exe and .dll files and the files that they now need to use.

Of course your build process still produces the full set of binaries1, but generating and distributing patch files means you have less to deploy.

It's not usual to do this, though, as it's more complex for the end user and (unless your distribution is vast) there's no highly tangible benefit.


Note 1 Why does this matter? What is the difference for you between:

  • Old file exists
  • Toolchain overwrites file with new information
  • New file now exists instead

and

  • Old file exists
  • Toolchain modifies only the changed bytes in the existing file
  • New file now exists instead

For any practical purposes I can't see how there'd be a benefit in the second.


If you make changes to a particular DLL or EXE in the code, you have to recompile and rebuild the DLL or EXE and then overwrite your existing one. I don't see how you could possibly make changes to an existing exe or DLL, without doing that.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜