所以我正在研究使用類似bsdiff的東西來創建非常小的自動補丁。我注意到的一個限制是它不會更新在win7中的程序和功能中顯示的已安裝版本號。有什麼方法可以手動更新這個,你應該使用的任何API?和其他你應該考慮的事情,顯然像UAC這樣的事情需要考慮。在使用二進制補丁時更新已安裝的程序版本?
回答
除了貝文的回答在64位機器上的路徑可能是HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微軟\的Windows \ CurrentVersion \卸載
我不知道,如果目前的用戶也具有這種結構
「程序和功能」或「添加/刪除程序文件」中的版本號來自注冊表項,而不是來自文件。
在其中一個鍵下面會出現應用程序的卸載子鍵。 HKEY_CURRENT_USER \軟件\微軟\的Windows \ CurrentVersion \卸載 HKEY_LOCAL_MACHINE \ SOFTWARE \微軟\的Windows \ CurrentVersion \卸載
更新本項下的DisplayVersion註冊表值將改變在程序和功能的版本號或添加/刪除程序文件。
我似乎沒有看到我們的軟件在任何這些位置。它通常通過安裝盾安裝,但我會認爲他們是代表您安裝的應用程序的中心位置。 –
我想我找到了。似乎在64位上,您需要考慮此路徑 HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows \ CurrentVersion \ Uninstall –
- 1. 使用Powershell已安裝的MSKB補丁更新清單
- 2. 如何安裝qemu補丁版本?
- 3. 如何使用補丁更新我的Drupal本地版本(BZR)
- 4. wix - 安裝程序或補丁安裝程序
- 5. 如何如何創建,無需重新安裝在新版本的應用程序更新應用程序的更新補丁爲Windows創建應用
- 6. 安裝kibana補丁
- 7. WIX安裝程序安裝在多個位置,然後補丁
- 8. 在已安裝的以前的快速補丁上應用補丁(通過補丁設計視圖創建)
- 9. 如何更新已安裝的窗口應用程序(創建修補程序)
- 10. MSI安裝程序遠程失敗 - 即使在卸載之後,「已安裝更新的版本」
- 11. 代碼檢查更新,安裝新版本的應用程序
- 12. intellij社區版補丁更新
- 13. 安裝版本的Rubygems已經過時了,但我實際上已經安裝了更新的版本?
- 14. 算法在有序補丁集合中使用最新補丁對對象值進行補丁
- 15. 如何安裝JRE補丁
- 16. 如何爲現有安裝程序構建補丁程序
- 17. JDK 1.8關鍵更新/安全補丁
- 18. Maven工件補丁版本
- 19. 如何在安裝新版本時刪除以前版本的應用程序
- 20. Wso2 Scim用戶使用補丁更新
- 21. 如何讓msi安裝程序在較新的版本上安裝舊版本?
- 22. nodejs:更高版本的Node.js已經安裝。安裝程序將立即退出
- 23. Maven的:版本:更新父隨後安裝安裝舊版本
- 24. 如何手動安裝IntelliJ IDEA補丁更新?
- 25. 安裝Drupal安全補丁程序的正確程序是什麼?
- 26. 在ubuntu上安裝openssh-LPK補丁
- 27. Android:您可以檢查應用程序安裝是否新鮮或已安裝應用程序的舊版本?
- 28. 退出後臺WPF應用程序來安裝更新版本
- 29. 在使用Delphi的已安裝應用程序中對數據庫進行版本控制
- 30. 編輯(補丁)在IDA的二進制文件臨
在Windows安裝程序和MSI技術支持通過MSP文件進行「修補」。對於所有這些WIX是一個好的前端:http://wix.sourceforge.net/ – selbie