4

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

我在构建项目时遇到了错误:

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 版引擎从这里构建了项目。

有人可以帮我弄这个吗?

4

3 回答 3

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

于 2012-04-25T12:39:14.660 回答
1

在许多情况下,您只需将项目文件传递给 MsBuild,它就会编译得很好。例如:

msbuild MyProj.csproj /p:Configuration=Release

.csproj 文件是有效的 MsBuild XML 文件,而 .sln 文件必须即时转换为 MsBuild 脚本,这就是它们与特定版本的 Visual Studio 相关联的原因。

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

于 2012-04-25T22:54:33.187 回答
0

好的,已获得客户端安装 VStudios 的许可。安装并构建程序:/

于 2012-04-30T13:17:26.850 回答