我需要從生成的類動態地更改VS中的安裝項目的版本?我可以那樣做嗎?動態地在安裝項目中更改版本?
1
A
回答
1
所有VS項目基本上都是文本文件,所以理論上你可以做你想做的,但也許不是從VS內部。
您將需要更改項目的ProductVersion屬性。在文本文件中,查找包含類似下面一行:
"ProductVersion" = "8:1.0.1001"
的「1.0.1001」部分應該是無論你的當前版本。 8:似乎是一個類型標識符;我猜想8代表一個字符串。
當您更新ProductVersion時,您還應該更新ProductCode。這只是一個GUID,所以你可以簡單地生成和ToString()一個新的隨機GUID。如果您希望安裝程序找到您的程序的先前版本並將其刪除,請勿觸摸UpgradeCode。
這完全可以用一個簡單的.NET程序來完成。將它集成到VS構建中是比較棘手的,因爲安裝項目不像其他構建項目那樣是MSBuild腳本,所以你無法直接從安裝項目中訪問MSBuild中的各種自定義構建邏輯工具。您可以將您的主項目的MSBuild腳本設置爲包含構建任務,以便在構建時更新安裝項目版本。您還可以設置後期製作操作。
0
下面是一個腳本文件的示例,您可以使用該腳本文件來增加從安裝項目的PreBuild事件調用它的版本號。 (http://www.codeproject.com/Articles/22256/NewSetupVersion-for-MSI-Projects)
閱讀amthog在評論中提出的問題。在腳本運行之後,項目沒有重新加載,但在構建之前可能會導致頭痛。我有一個後期構建事件,由於在構建事件運行時尚未重新加載的「外部」(通過此腳本)所做的更改現在已失敗。
如果這不涉及你,這個腳本似乎運作良好。
相關問題
- 1. 在項目本地安裝PEAR?
- 2. 在舊版本上安裝新版本的部署項目
- 3. 安裝django後更改python版本
- 4. 動態更改uitabbar項目
- 5. Visual Studio 2010安裝程序自動更改SVN版本的.NET項目組合版本
- 6. 如何在Maven的本地項目中安裝依賴項?
- 7. Maven的:版本:更新父隨後安裝安裝舊版本
- 8. Rails項目和Rails版本更改
- 9. 更改多個項目的裝配版本
- 10. VS安裝項目 - 更改安裝語言
- 11. 在VS2008安裝項目中自動安裝驅動程序
- 12. VS安裝項目 - .Net Framework 3.5或更高版本的啓動條件
- 13. 如何更改動態欄狀態動態設置項目中的文本
- 14. 更改目標名稱在VisualStudio的2010安裝項目
- 15. 更改Pecl安裝目錄
- 16. Nsis - 更改安裝目錄
- 17. 在Visual Studio中更改我的項目安裝路徑(Express 2013)
- 18. 安裝本地版本的Python
- 19. 廚師保留本地安裝版本
- 20. 動態更改WinForms組合框中項目的文本
- 21. 更改動態組合框中ComboBox項目的文本樣式
- 22. 安卓更新/安裝版本檢查
- 23. Maven項目安裝:無效目標版本:1.7錯誤
- 24. 獲取安裝版本在asp.net網站項目
- 25. 爲什麼在安裝更高版本後,qmake -v版本不會改變?
- 26. 動態更改菜單項目
- 27. 動態更改GridView項目模板
- 28. Flex ContextMenu動態更改項目
- 29. 動態更改ListView項目的問題
- 30. 如何在Android項目中更改SDK版本
請提供更多信息,以便我們確定您需要什麼以及如何完成它。 – Bernard 2012-01-05 14:53:27