在 Visual Studio 2013 中启用 WiX 项目
Posted
技术标签:
【中文标题】在 Visual Studio 2013 中启用 WiX 项目【英文标题】:Enable WiX project in Visual Studio 2013 【发布时间】:2013-10-27 05:15:57 【问题描述】:我有一个带有 WiX 安装程序项目的 VS 2012 解决方案。但是,当我在 VS 2013 (Release) 中打开解决方案时,WiX 项目不兼容。
有人知道 VS 2013 版本(wixtoolset 吗?)在哪里/是否可用?或者有没有办法让当前项目在 VS 2013 中兼容?
【问题讨论】:
【参考方案1】:您必须升级您的 wix 并安装 WIX 3.9 以使您的 WIX 项目与 vs 2013 兼容。 下面是下载wix 3.9的链接 https://wix.codeplex.com/releases/view/136891
【讨论】:
安装 wix 3.9 后,您必须重新启动 Visual Studio 2013..然后重新加载 wix 项目..【参考方案2】:最新的 Wix 安装程序似乎无需任何配置即可更正安装。
-
关闭所有视觉工作室。运行.exe
https://wix.codeplex.com/releases/view/136891。
出现一个漂亮的红色启动画面,单击标题为“安装”的中心部分,这
为您机器上所有版本的 VS 重新安装 Wix。
为我工作。
【讨论】:
【参考方案3】:运行 wix 的工具包安装程序后:
对于 Wix 3.8 和 3.9,以及 Visual Studio 2012 和 2013,我需要删除所有缓存文件:
"%appdata%..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache" (对于 VS 2012)和 “%appdata%..\Local\Microsoft\VisualStudio\12.0\ComponentModelCache” (对于 VS 2013)分别。
删除这些文件后,在每个VS版本的命令提示符下执行:
devenv /setup
例如"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv /setup"
和“C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv /setup”
只有在我删除了这些文件并重新启动机器后,执行“devenv /setup”才有预期的效果。
如果没有先删除这些缓存文件,那么您可能会遇到包无法正确加载的问题。你会知道你的包是否加载失败,因为 VS 在启动时会失败。
【讨论】:
我在从 WiX 3.8 升级到 3.9 并且第一次使用 VS 2013 时遇到了问题。我做了这一步,它奏效了。谢谢!【参考方案4】:2013 年 12 月 2 日更新: WiX 工具集 3.8 发布,正式支持 Visual Studio 2013 版本。可从wixtoolset.org下载。
您可以手动启用 Visual Studio 2013 与旧版 WiX 的兼容性:
复制C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\WiX
到C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\WiX
修改C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\WiX\extension.vsixmanifest
,添加以下内容:
<VisualStudio Version="12.0">
<Edition>Ultimate</Edition>
<Edition>Premium</Edition>
<Edition>Pro</Edition>
<Edition>Express_All</Edition>
</VisualStudio>
然后打开VS2013 Native Tools 命令提示符(来自C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts
)并执行:
devenv /设置
当您打开 Visual Studio 2013 时,WiX 3.7 项目将兼容。
【讨论】:
我猜这是取自我的帖子:windows-installer-xml-wix-toolset.687559.n2.nabble.com/… 需要注意的是,这不会完全支持VS2013。 WiX 3.8 中还有其他工作可以使其他部分正常工作,例如 C++ 项目模板。 我在 10 月 14 日 VS2013 发布候选版本时有blogged these instructions,早在这个问题之前。但说明与 nabble 链接中的说明相同。 仅供参考:如果您已按照 3.7 的这些说明安装 3.8,您可能会在加载 wixproj 文件时收到此错误:The 'WiX Project Package' package did not load correctly.
我明白了,从 `C:\Program Files ( x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft` 并修复 Wix 3.8 设置以使其再次运行。
我在 3.6 上试过这个,但在打字时没有得到任何智能感知。 :(【参考方案5】:
如果您在 WiX 之后安装 VS2013,则必须先卸载 WiX,然后重新安装。仅仅修复 WiX 安装是不够的。
【讨论】:
好的,对我来说不是,但我在修复后没有重新启动-也在win2k8服务器上开发-其他操作系统可能不同 对不起,我操之过急。它对我也不起作用。【参考方案6】:只需更新到 WiX v3.8,它确实支持 VS2013:http://wixtoolset.org/releases/v3.8/stable
【讨论】:
+1 链接。因为我使用的是早期的 3.8 版本,所以这对我来说是一个自然改进的解决方案。 有谁知道如何使用二进制文件进行离线安装?似乎没有包含安装程序。【参考方案7】:使用 WiX 3.7,即使您无法在 Visual Studio 2013 中打开 wixproj,它也会使用 MSBuild 进行编译,以获得 VS2013 解决方案。 (更改 wixproj ToolsVersion="12.0")
【讨论】:
以上是关于在 Visual Studio 2013 中启用 WiX 项目的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Visual Studio 2013 中使用 CDialog 类启用按钮的属性页
为 Visual Studio 2013 启用 ASP.NET 配置
如何在 Visual Studio 2013 中为 Cordova 应用程序启用断点
Visual Studio VC2013 在没有 AVX 的情况下启用 SSE4.1