use*_*702 28 .net-4.0 visual-studio
对于Windows服务项目,我无法在VS2010中构建安装项目.它失败并出现此错误:
在'C:\ MyProject\Engine'中找不到所需的文件'setup.bin'.
我的环境是带有Visual Studio 2010版本10.0.40219.1 SP1Rel的Windows 7 Professional x64
我已经下载了适用于Windows 7和.NET Framework 4的Microsoft Windows SDK,已修复,然后重新启动,然后安装了除Visual C++编译器之外的未经检查的组件,然后安装了KB2519277.
这些是现有的注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\GenericBootstrapper\3.5
Path = c:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\GenericBootstrapper\4.0
Path = c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\
Run Code Online (Sandbox Code Playgroud)
这些是现有文件:
C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Engine\setup.bin
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Engine\setup.bin
Run Code Online (Sandbox Code Playgroud)
现有的解决方法是将Engine目录复制到项目目录,但是每次创建新项目时都必须这样做.
如何正确修复?
use*_*702 23
使用Process Monitor我发现,在尝试访问路径之前,使用DLL来检索此路径.以下可能是临界合法的,但无论如何我想分享我的发现.
DLL位于,C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Build.Tasks.v4.0.dll正在使用的类是Microsoft.Build.Tasks.Deployment.Bootstrapper.BootstrapperBuilder.使用您最喜欢的反汇编工具,您可以发现最终在检索路径时进行了三次尝试.
我不确定为什么它说11.0,据我记得VS 2012还没有在这台机器上安装过.
所以SDK安装程序中存在一个错误,或者DLL中存在错误.无论哪种方式,创建11.0注册表项并添加值都可以解决此问题.注意:必须重新启动Visual Studio,因为在尝试检索路径后,它将被缓存.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GenericBootstrapper\11.0]
"Path"="C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\Bootstrapper\\"
Run Code Online (Sandbox Code Playgroud)
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\GenericBootstrapper\11.0]
"Path"="C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\Bootstrapper\\"
Run Code Online (Sandbox Code Playgroud)
这个解决方案对我有用(VS 2013):http://www.codewrecks.com/blog/index.php/2014/05/31/error-msb3147-could-not-find-required-file-setup-bin-在/
将msbuild.exe的PATH更改为: C:\Program Files (x86)\MsBuild\12.0\Bin\msbuild.EXE
我在TFS构建时遇到了同样的问题.
您可以通过在定义构建的MSBuild参数中设置visual studio版本来解决此问题:
/property:VisualStudioVersion=12.0;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25283 次 |
| 最近记录: |