我已經創建了嵌入式資源的自定義動作DLL文件作爲SQL Server Compact Edition msi ...這個dll被分配爲在安裝項目中的自定義操作..但是當我運行安裝程序msi它會引發錯誤,說另一個安裝正在進行中......我嘗試了代碼中的process.waitforExit(3000)選項,但仍然找不到解決方案? 請回復如何在父MSI下運行一個.msi,它會拋出錯誤「另一個安裝正在進行中......」
0
A
回答
2
基本上有兩種方法將依賴關係包含到您的安裝中。通過在MSI文件之前運行的引導程序或作爲合併模塊。由於這是微軟產品,我懷疑它是否可用作合併模塊。
換句話說,您應該使用引導程序到您的應用程序。嘗試dotNetInstaller
1
另一個選項是MSI chaining,雖然直到MSI 4.5才引入它,並且要求目標系統安裝MSI 4.5或更高版本。目前,只有Windows 7具有本機支持,但舊版本Windows有4.5個可再發行組件。最後,請注意,使用4.5可再發行組件更新MSI通常需要重新啓動。
-1
你需要支持靜默安裝嗎?我的回憶是,安裝程序在進入執行順序之前將不會獲取安裝程序服務上的鎖定。這意味着你可以在用戶界面序列中的某處啓動SQL Server安裝。
0
MSI強制執行兩個互斥鎖。 1)每臺機器一個執行順序和2)每個進程一個UI順序。儘管在技術上可以忽視最佳做法,並從第一個用戶界面調用第二個MSI,但您將失去進行無提示安裝的能力,而某些可憐的客戶有一天會失望。
要麼投資引導程序/ chainer或另一種可能性是SQL Server Compact版本太小,以至於它們還支持專用部署模型,只需在應用程序目錄中部署程序集即可。這種方法的問題在於,如果微軟對那些無法爲其提供服務的組件進行安全更新。你將不得不重建和部署你的產品。
相關問題
- 1. 從C#安裝程序安裝程序運行另一個MSI
- 2. 在MSI安裝程序中安裝另一個軟件包
- 3. 在安裝過程中運行MSI
- 4. 安裝時卸載另一個MSI
- 5. msi安裝後運行chm?
- 6. 如何在MSI安裝完成後運行腳本? MSI與VS2010 +安裝嚮導
- 7. 創建調用另一個msi安裝的基本MSI
- 8. Wix:從另一個MSI安裝和配置MSI軟件包
- 9. MSi安裝錯誤
- 10. 只有在安裝了另一個安裝msi軟件包
- 11. 在msi運行之前檢查另一個已安裝的應用程序
- 12. 如何檢測正在運行的MSI安裝
- 13. 運行msi安裝程序命令行
- 14. 如何在MSI安裝程序中搭載MSI安裝程序
- 15. 從MSI安裝中運行VBScript
- 16. MSI:在安裝
- 17. 如何將6個msi捆綁到一個msi安裝程序中
- 18. 多個項目MSI安裝程序沒有運行後安裝
- 19. 使用MSI打包一個.EXE文件,以便MSI在msi安裝過程中安裝exe文件
- 20. msi安裝程序錯誤
- 21. 錯誤而MSI安裝包
- 22. 如何解決Pywinauto這個問題上運行.msi安裝
- 23. 在安裝msi包之前卸載另一個應用程序
- 24. 如何安裝msi一個接一個.net?
- 25. 從MSI安裝腳本運行EXE C#
- 26. msi安裝程序運行兩次
- 27. 如何測試另一個安裝是否正在進行?
- 28. 創建一個msi安裝程序
- 29. 如何創建一個MFC應用程序來運行setup.exe(msi安裝程序)?
- 30. 如何找出msi安裝程序運行的位置