[英]Target both x86 and x64 in the Windows Installer (VS2008)
有沒有辦法使用 Visual Studio 2008 創建 Windows 安裝程序,以同時針對 x86 和 x64 操作系統。
在 TargetPlatform 屬性中,我只有: x86
, x64
, Itanium
。 而且我知道在某個地方還有一個叫做Any CPU
但我找不到它。
另外,我不想創建兩個安裝程序。
有任何想法嗎?
謝謝。
它可以完成,但不能使用 VS 安裝程序。 我有一位同事通過 InstallShield 產品實現了這一目標,但讓我說這絕對是一個 hack,最后他得到了更好的結果,制作了兩個不同的安裝程序,每個目標位數一個。
我還需要開導你:
在 TargetPlatform 屬性中,我只有:x86,x64,Itanium。 而且我知道在某個地方還有一個叫做 Any CPU
TargetPlatform
屬性不會改變您正在安裝的應用程序的位數,您會將它與程序集本身的目標平台混為一談。 MSI 是運載工具,其中的.Net 程序集是有效負載。 MSI 上的TargetPlatform
設置不控制 .Net 程序集的 JIT 編譯方式,而是用於幫助確定安裝路徑(如果設置為 x86 則默認安裝路徑應為%PROGRAMFILES(x86)%
,並且將針對不同的注冊表配置單元。
我可能是錯的,但我很確定這是不可能的。 您提到的 Any-CPU 由.Net 編譯器用於您的程序集(.Net 程序集默認情況下與體系結構無關,但可以強制編譯為 x86 或 x64)。 但由於 windows-Installer 是本機 win32 exe,因此無法將其生成為“Any-CPU”。 因此,您必須為 x86 和 x64 生成 2 個相同的安裝程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.