我只需要安裝應用程序的多個實例,將它們保存在不同的文件夾中,桌面上沒有任何快捷方式。 換句話說,當應用程序已經安裝在一個文件夾中,如果我再次雙擊.msi文件,安裝程序不應該問我是否需要修復或刪除我的應用程序,但它應該允許安裝它在一個新的文件夾中。 我該如何解決這個問題?使用Wix工具集安裝應用程序的多個實例
3
A
回答
2
在Windows中,您要求的是不正常的。通常,每個程序(產品)只安裝一次。即每個安裝包都有它的ID(稱爲「ProductID」)。如果該ID已在系統中註冊爲已安裝,則系統將不允許安裝具有相同ProductID的第二個產品,但開始更改/刪除。
你可以做什麼:
- 不要使用Windows安裝程序(和維克斯),使用ZIP例如,或者一些自解壓壓縮包,或者不註冊在已安裝的產品的一些其他程序系統。
- 如果您希望MSI和Windows Installer出於任何原因,請在安裝前使用命令行更改產品ID。嘗試搜索「使用轉換多次安裝相同的MSI」。因此,您可以在安裝之前進行每個轉換後的相同MSI,以便它看起來與系統不同。
- 每個用戶安裝,如果這是對你不夠好(即不要安裝到Program Files文件,安裝到用戶文件夾)
- 也許還有其他的選擇...
4
我曾經工作與之前的這種安裝類似,我會同意@Nikolay--這是一個例外,而不是基於Windows Installer安裝的規則。 Component rules往往難以遵循,多個實例方面在頂部增加了一些複雜性。所以,在你走這條路之前要三思。
複雜,仍然有可能。幾年前,我用WiX 3.6發佈了the article of how to start authoring multiple instance installations。請注意,這個版本的WiX顯着簡化了它。這不是一個簡短的閱讀,所以這裏是一個快速摘要:
- 您將無法實現「安裝具有雙擊MSI文件的每個新實例」行爲。你必須有一個引導程序 - 將正確的命令行參數傳遞給
msiexec.exe
。 - 不要試圖支持無限數量的實例 - 嘗試堅持合理的大數字。你想象有人在一臺機器上安裝你的應用10次嗎? 50? 100?做出一個理智的選擇 - 這將是你的
<Instance/>
元素的數量。 - 雖然您只需修飾具有
MultiInstance
屬性的非文件數據組件,但如果將其添加到所有組件中,則不會中斷它。 - 雖然我在該帖子中解釋了多個實例的修補,但如果沒有其他選擇,我只會在生產中使用它。
相關問題
- 1. Wix工具集多實例安裝
- 2. Wix安裝多個應用程序
- 3. 使用WiX工具集安裝程序安裝mongo db並啓動mongo服務
- 4. WiX 3.6 - 完整的WiX 3.6多實例安裝程序?
- 5. ASP.NET應用程序MSI安裝程序多個實例
- 6. 通過WIX安裝與多個安裝程序相同的應用程序
- 7. 使用WiX來安裝具有多個Windows服務的進程
- 8. 升級多實例web應用程序安裝程序
- 9. 如何使用msi安裝程序安裝同一應用程序的多個實例
- 10. 檢查條件,並繼續使用Wix工具集安裝
- 11. 使用WIX自動更新應用程序安裝程序?
- 12. 用WiX安裝程序安裝PostGreSql
- 13. 使用WiX打包多個文件的安裝程序
- 14. msbuild&wix - 多個安裝程序?
- 15. 如何使用wix安裝程序運行多個安裝的exe文件?
- 16. 適用於多個項目的通用Wix安裝程序
- 17. VS2012和Wix 3.6 - 使用我的應用程序安裝.Net 4.5
- 18. wix工具集編譯工具未安裝
- 19. 可WIX工具集用於安裝IE Add和Google Chrome擴展?
- 20. WIX工具集 - 根據用戶輸入安裝先決條件
- 21. 安裝WIX更改程序集名稱
- 22. 使用通過Wix創建的安裝程序啓用安裝程序權限
- 23. 用Wix安裝一個web應用程序
- 24. 使用WiX將程序集放入GAC和安裝路徑
- 25. 應用程序的多個實例
- 26. 應用程序的多個實例
- 27. Angularjs應用程序的多個實例
- 28. 跟蹤應用程序安裝程序操作的工具? (Win)
- 29. wix安裝程序 - 支持同時升級和多個安裝
- 30. WIX安裝程序安裝在多個位置,然後補丁