2012-04-25 45 views
4

我需要命令行上的低版本的msbuild C#项目,我没有Visual Studios。需要命令行上的低版本的msbuild C#项目,没有Visual Studio

我对着错误,而建设项目:

Microsoft (R) Build Engine Version 2.0.50727.42 
[Microsoft .NET Framework, Version 2.0.50727.42] 
Copyright (C) Microsoft Corporation 2005. All rights reserved. 

.\Project.sln : Solution file error MSB4054: The solution file must be opened in t 
he Visual Studio IDE and converted to the latest version before it can be built 
by MSBuild. 

我有.sln文件和以前没人从这里与1.0版引擎打造的项目可能。

有人可以帮助我吗?

+2

解决方案文件的版本是什么? – 2012-04-25 12:23:50

+0

不确定该文件说:Microsoft Visual Studio解决方案文件,格式版本8.00 – Lordlebu 2012-04-25 12:33:50

+0

因此它是Visual Studio 2005. – 2012-04-30 13:24:31

回答

0

好的,从客户端获得安装VStudios的许可。安装并编译该程序:/

1

你会在C:\ Windows \ Microsoft.NET \ Framework [框架版本]中找到MSBuild。

例如,.NET 2.0附带的是C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727。我相信这是VS 8.0带来的。

如果您需要x64版本,它在C:\ WINDOWS \ Microsoft.NET \ Framework64 \ V2.0.50727

+0

从C:\ Program Files \ Microsoft.NET \ SDK \ v2.0 \ – Lordlebu 2012-04-25 12:42:32

+0

运行cmdprompt在C:\ WINDOWS \ Microsoft.NET \ Framework,我有v v1.0.3705,v1.1.4322,v2.0.50727,v4.0.30319目录 – Lordlebu 2012-04-25 12:43:16

+0

2.0与VS8相关我认为,3.5与VS9,4.0与VS10 – 2012-04-25 12:47:40

1

在很多情况下,你可以通过项目文件的MSBuild,它会编译就好了。 Forexample:

msbuild MyProj.csproj /p:Configuration=Release 

.csproj的文件是有效的MSBuild XML文件,而文件的.sln必须转换成的MSBuild脚本上的苍蝇,这就是为什么它们被设置到Visual Studio中的一个特定版本。

如果您的解决方案中有多个项目,我建议将主/启动项目传递给MsBuild,以便所有依赖关系也可以构建。如果解决方案文件中指定了解决方案级别依赖关系或自定义解决方案配置,则此方法并不总是有效,并且您可能遇到问题。

+0

得到.proj文件但仍然有错误。 C:\ DATA \新\新code_30062011 \埃菲索>的MSBuild Efeso.csproj /p:Configuration=1.1 微软(R)构建引擎版本2.0.50727.42 [Microsoft .NET框架版本2.0.50727.42] 版权所有( C)Microsoft Corporation 2005.保留所有权利。 C:\ data \ new \ New code_30062011 \ Efeso \ Efeso.csproj(1,1):error MSB4075:该项目必须在Visual Studio IDE中打开并转换为最新版本 由MSBuild构建。 – Lordlebu 2012-04-26 08:22:44

相关问题