的MSBuild:错误MSB3147:找不到所需文件'将setup.bin“ [英] MSBuild: error MSB3147: Could not find required file 'setup.bin'

查看:1345
本文介绍了的MSBuild:错误MSB3147:找不到所需文件'将setup.bin“的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用的MSBuild(在CruiseControl的)建安装我的.NET 4的应用程序。安装构建应该建立一个boostrapper安装prerequisite(.NET 4.0和Windows安装程序4.5在这种情况下),这样做是使用的 GenerateBootstrapper任务

I'm trying to use MSBuild (under CruiseControl) to build the installation for my .NET 4 app. The installation build should create a boostrapper to install the prerequisite (.NET 4 and Windows Installer 4.5 in this case), this is done using the GenerateBootstrapper Task.

从开发计算机上的命令行,其中有VS 2010中安装,工作正常运行 MSBuild.exe project.msbuild.xml 。运行构建机器,它不仅拥有最新的Windows 7 SDK,上失败,错误:

Running MSBuild.exe project.msbuild.xml from the command line on a development machine, which has VS 2010 installed, works fine. Running on the build machine, which only has the latest Windows 7 SDK, fails with the error:

(ProductDistributions target) -> bootstrapper.xml(236,5): error MSB3147: 
Could not find required file 'setup.bin' in '<project path>\ProductDistributions\Engine'.

在dev的机器,我有一个 C:\ Program Files文件(x86)的\微软的SDK \的Windows \ v7.0A \引导程序\发动机包含文件夹将setup.bin 文件,但在构建机上没有引导程序文件夹中的 C:\ PROGRAM文件\微软的SDK \的Windows \ V7.1 (7.1 VS 7.0A显然是因为VS2010安装7.0A,但独立的SDK是7.1)。

On the dev machines, I have a C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Engine folder containing a setup.bin file, but on the build machine there is no Bootstrapper folder inside C:\Program Files\Microsoft SDKs\Windows\v7.1 (the 7.1 vs 7.0A is apparently because VS2010 installs 7.0A, but the standalone SDK is 7.1).

此外,在构建机上里面有 HKLM \软件\微软\ GenericBootstrapper \ 无4.0注册表项,但开发的机器确实有一个包含了路径字符串值 C:\ Program Files文件(x86)的\微软的SDK \的Windows \ v7.0A \引导程序\

Also, on the build machine there is no 4.0 registry key inside HKLM\Software\Microsoft\GenericBootstrapper\, but the dev machines do have one containing a path string with a value of c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\

它看起来像有件事情我需要安装在构建机上添加的引导程序文件夹微软的SDK \的Windows \ V7.1(和设置注册表项),但我不知道那是什么。任何想法,我需要?

It looks like there's something I need to install on the build machine to add the Bootstrapper folder to "Microsoft SDKs\Windows\v7.1" (and setup the registry keys), but I'm not sure what that is. Any idea what I need to get?

还是有别的东西,我需要让我的安装建设工作?

Or is there something else I need to get my installation build working?

更新:我这目前工作通过手动复制从开发计算机的7.0A引导程序文件夹到构建机和手动添加的路径 HKLM \软件\微软\ GenericBootstrapper \ 4.0 注册表项。这似乎是工作,但它看起来这不可能是我应该做的来解决这个问题。所以我AP preciate如果任何人有一个不太哈克解决这个。

Updated: I have this working at the moment by manually copying the 7.0A bootstrapper folder from a dev machine onto the build machine, and manually adding that path to the HKLM\Software\Microsoft\GenericBootstrapper\4.0 registry key. Which seems to work, but it seems like this can't be what I'm supposed to do to fix the problem. So I'd appreciate if anyone has a less-hacky solution to this.

推荐答案

按照T <一个href="http://blogs.msdn.com/b/emmamou/archive/2009/04/08/team-build-for-clickonce-application-with-bootstrapper.aspx"相对=nofollow>他的博客文章中的引导程序文件在.NET Framework SDK安装过程中安装。这也显示了搜索以寻找引导程序目录中的注册表项。

According to this blog entry the bootstrapper files are installed during the .NET Framework SDK install. It also shows the registry entries that are searched to look for the bootstrapper directory.

您可以尝试安装.NET Framework SDK或手动设置它通过复制文件和添加注册表项。

You could try installing the .NET Framework SDK or manually set it up by copying the files and adding the registry entries.

这篇关于的MSBuild:错误MSB3147:找不到所需文件'将setup.bin“的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆