错误MSB3147:找不到所需的文件'setup.bin'发布到本地失败 [英] error MSB3147: Could not find required file 'setup.bin' Publish to Local FAILURE

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

问题描述

在浏览互联网并在此处的聊天中讨论 之后,我终于要问一个有关旧错误的新问题.

After scouring the internet and discussing this in chat here, I'm finally asking a new question about an old error.

我正在Windows 10上使用Visual Studio Enterprise 2015.

I'm using Visual Studio Enterprise 2015 on Windows 10.

这个问题和答案来自2011年 MSBuild:错误MSB3147:找不到所需的文件"setup .bin'.

The question and answers on this are from 2011 MSBuild: error MSB3147: Could not find required file 'setup.bin'.

这个问题和被接受的答案写于2012年,其他答案来自2015年,其中一个来自2016年,对我们没有帮助 找不到所需的文件'setup.bin'.

This question and the accepted answer were written in 2012, the other answers are from 2015, with one from 2016, that is not helpful Could not find required file 'setup.bin'.

该项目的目标版本为4.0.我正在运行一个psl脚本,该脚本仅从另一台本地计算机运行.

The target build for the project is 4.0. I'm running a psl script that has only been run from another local machine.

我不断收到此错误:

C:\ Program文件 (x86)\ MSBuild \ 12.0 \ bin \ Microsoft.Common.CurrentVersion.targets(4769,5): 错误MSB3147:在以下位置找不到所需的文件"setup.bin" 'C:\ dev \ xxx \ src \ xxx \ Engine'. [C:\ dev \ xxx \ src \ xxx \ xxx.csproj]发布 到本地失败

C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4769,5): error MSB3147: Could not find required file 'setup.bin' in 'C:\dev\xxx\src\xxx\Engine'. [C:\dev\xxx\src\xxx \xxx.csproj] Publish to Local FAILURE

我已经尝试了每个答案的所有解决方案.唯一有效的方法是此答案

I have tried every solution from every answer. The only one that works is from this answer

<BootstrapperEnabled>false</BootstrapperEnabled> 

如果需要将其设置为true,则会出现问题.

Which is a problem if it is needed to be set to true.

我还遵循了此博客.

我添加了注册表项:

我还注意到Windows 10内置了.NET框架,但缺少4.0.

I'm also noticing that Windows 10 has .NET framework built in, and it misses 4.0.

我已经卸载了dotNetFx40_Full_setup.exe并在Visual Studio上进行了修复,以允许它根据需要安装sdks.这没有帮助.

I had uninstalled the dotNetFx40_Full_setup.exe and ran a repair on Visual Studio to allow it to install the sdks as needed. This did not help.

我有一个MSBuild exe,据此它应该是据此:

I have an MSBuild exe where it is supposed to be according to this:

我想知道是否是因为缺少.NET SDK 4.0.
它是引导程序的版本吗? 我不知道该如何解决.有谁知道如何在Windows 10上解决此问题?

I'm wondering if it's because I'm missing .NET sdk 4.0.
Is it the version of bootstrapper? I don't know how to fix it. Does anyone know how to solve this on Windows 10?

推荐答案

引导程序负责初始化 使用复合应用程序库构建的应用程序.

The bootstrapper is responsible for the initialization of an application built using the Composite Application Library.

设置<BootstrapperEnabled>false</BootstrapperEnabled>时,将忽略所构建应用程序的初始化.如果将其设置为true,则将执行初始化,然后将收到该错误"MSB3147:找不到所需的文件'setup.bin'".

When you set <BootstrapperEnabled>false</BootstrapperEnabled>, the initialization of an application built will be omit. If you set it true, the initialization will be executed, then you will get that error "MSB3147: Could not find required file 'setup.bin'".

根据您的描述和图像,我发现您拥有MSBuild 12.0,但是将GenericBootstrapper的值添加到了MSBuild 4.0注册表项中.

According to your description and images, I found that you have the MSBuild 12.0, but added the value of GenericBootstrapper to the MSBuild 4.0 registry key.

从Visual Studio 2013开始,MSBuild Toolset版本是 与Visual Studio版本号相同.

Starting in Visual Studio 2013, the MSBuild Toolset version is the same as the Visual Studio version number.

因此,请检查版本12.0的GenericBootstrapper的注册表值. 如果该值不存在或不正确,请添加其值为"C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ Bootstrapper".

So please check the registry value of GenericBootstrapper with the version 12.0. If the value is not exists or incorrect, please add it with value "C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\Bootstrapper".

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

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