使用Visual Studio 2010构建x64 WIX项目?

Mar*_*the 7 msbuild wix visual-studio-2010

我无法让VS2010为x64构建一个WIX项目 - 这意味着我可以添加平台,但它不会构建它.

重现步骤:

  1. 新建项目> Windows Installer XML>安装项目(使用默认名称,位置等)
  2. Build> Configuration Manager> Active Solution Platform>
  3. 新平台:x64
  4. 复制设置:x86
  5. 创建新的项目平台:已检查(我尝试未选中,没有更好)
  6. 单击确定以关闭New Solution Platform对话框
  7. 返回Configuration Manager,为平台选择x64
  8. 关闭配置管理器
  9. 重新打开配置管理器

结果:平台已恢复为x86.

预期结果:平台仍设置为x64.

我错过了什么吗?我不能成为唯一碰到这个人的人吗?

小智 6

WiX绝对支持x64!我有同样的问题,这似乎是一个疯狂的问题,因为我也得到它为x86和x64的另一个解决方案.所以我比较了两个解决方案文件,并找出了一个无效的问题.

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection
Run Code Online (Sandbox Code Playgroud)

这是一个生成的非工作的.为了使它工作,我替换了"="后面的前四个字符串,并做了一些x86和x64构建.这对我有用.

这是相同但有效的代码:

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection
Run Code Online (Sandbox Code Playgroud)

希望对你也有用

  • 第五和第六行不应该是'Release | x64`吗? (2认同)