[英]Setup targeting both x86 and x64?
我有一個同時需要x64和x86 dll的程序(它可以確定運行時需要哪些dll),但是當嘗試創建安裝程序時,它抱怨:
目標為“ AMD64”的文件AlphaVSS.WinXP.x64.dll與該項目的目標平台“ x86”不兼容
目標為“ AMD64”的文件AlphaVSS.Win2003.x64.dll與該項目的目標平台“ x86”不兼容
目標為“ AMD64”的文件AlphaVSS.Win2008.x64.dll與該項目的目標平台“ x86”不兼容
如何使我的設置像程序一樣針對兩個平台?
安裝項目(在Visual Studio中)創建的MSI一次只能定位到一個平台。 您的選擇是制作兩個MSI,將它們合並在一起,然后制作一個在這兩者之間選擇的自定義安裝程序啟動打包程序。 有一些第三方產品,例如Advanced Installer ,可以為您完成此任務。
.Net具有“任何CPU”選項。 極有可能將其視為僅使用較少的x86功能的“通用”選項,但實際上,它允許每台計算機上的JIT編譯器為該計算機選擇適當的cpu類型。
唯一不應該使用它的時間是,如果您知道自己的依賴項或要求不利於一種體系結構或另一種體系結構。 例如:您知道您需要大量的內存,您對32位本機dll有依賴性,或者您想預編譯該應用程序。
這里存在危險,因為您具有特定於平台的dll依賴關系。 但是您同時擁有兩種類型的dll,這聽起來像您知道如何在運行時選擇正確的dll。 那么“ Any CPU”選項對您有用嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.