1

我正在尝试在安装了 VS2012 的 Windows 8 机器上手动构建 wix 工具集 3.7,但我一直遇到以下错误:

错误 WIXBUILD002:错误“Microsoft Windows SDK for Windows 7 and .NET Frame 4”或“Visual Studio 2012”必须是安装程序。

根据 wix 文档 http://wixtoolset.org/documentation/manual/v3/wixdev/building_wix.html

它应该在使用以下命令时起作用: msbuild /p:VisualStudioVersion="11.0" 。

任何帮助将不胜感激。

编辑:

通过将<PlatformSdkInstallPath>WixBuild.props 文件中的从 8.0 更改为 8.0A WIXBUILD002 错误得到解决。但是,现在我收到了大约 72 个错误,主要与 MSBUILD 有关

error MSB8020: The build tools for Visual Studio 2010
(Platform Toolset = 'v100') cannot be found. To build
using the v100 build tools, either click the project
menu or right-click on the solution, and then select
"Update VC++ Projects..."
4

1 回答 1

1

当我浏览 WIX 构建目标时,Error WIXBUILD002文件的定义是\tools\WixBuild.Tools.targets. 如果不存在根据属性的文件路径PlatformSdkBinPath或属性具有空值,则会发生这种情况。的值PlatformSdkBinPath在文件中设置\tools\WixBuild.props为从注册表项读取其值。显然在您的机器中没有这样的注册表项,而是.$(PlatformSdkInstallPath)bin\PlatformSdkInstallPathHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0v8.0A

问题是,WIX MSBuild 无法在您的机器中找到 Windows SDK。很可能它也可能是 WIX 源代码中的错误。

因此,基本上解决方案是更改HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0文件\tools\WixBuild.propsPlatformSdkInstallPath属性)和\tools\OneTimeWixBuildInitialization.projNetfxSdkInstallPath属性)中的注册表项路径(仅)以结束v8.0A而不是当前v8.0并尝试 MSBuild。

编辑:

为了解决这个问题:

MSB8020:找不到 Visual Studio 2010 的构建工具(平台工具集 = 'v100')。要使用 v100 构建工具进行构建,请单击项目菜单或右键单击解决方案,然后选择“更新 VC++ 项目...”

您可以参考我认为此 MSDN 帖子可用的解决方案。这里的解决方案基本上是安装Windows Driver Kit 8

注意:我觉得您的 VS 2012 安装存在一些基本问题,或者您使用的 VS 2012 的风味\版本缺少很多东西。

于 2013-09-28T18:08:35.920 回答