使用二进制补丁时更新已安装的程序版本?

时间:2011-08-19 03:51:10

标签: windows binary diff patch

所以我正在研究使用像bsdiff之类的东西创建非常小的自动补丁的想法。我注意到的一个限制是它不会更新在win7中的程序和功能中显示的已安装版本号。有什么方法可以手动更新这个,你应该使用的任何api?以及你应该考虑的任何其他事情,显然需要考虑像UAC这样的事情。

2 个答案:

答案 0 :(得分:2)

“程序和功能”或“添加/删除程序文件”中的版本号来自注册表项而不是文件。

在其中一个键下面会有应用程序的卸载子键。 HKEY_CURRENT_USER \软件\微软\的Windows \ CurrentVersion \卸载 HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \卸载

更新此密钥下的DisplayVersion注册表值将更改“程序和功能”或“添加/删除程序”文件中的版本号。

答案 1 :(得分:2)

除了Bevan在64位计算机上的答案之外,路径可能是HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows \ CurrentVersion \ Uninstall

我不确定当前用户是否也有此结构