MSBuild - 解决方案文件错误MSB5010:找不到文件格式标头

时间:2012-10-22 14:53:55

标签: c# msbuild

我目前正在尝试在虚拟机中构建我的C#代码 代码在本地计算机(Win7,64bit,Visual Studio 2008 Prof)上编译良好。
在我的虚拟机(Win7,64位,Visual Studio 2008教授)上,相同的项目文件无法构建,并出现以下错误:

Solution file error MSB5010: No file format header found.

MSBuild(本地机器):

Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]

MSBuild(虚拟机):

Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]

项目文件的开头如下所示:

<empty line>
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = [...]

就MSBuild的版本输出正确而言,我使用的是相同版本的MSBuild。

但为什么一台机器上的构建失败却在本地运行良好? o.O

更新
我删除了导致另一个错误的空行:

Microsoft (R)-Buildmodul, Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5456]
Copyright (C) Microsoft Corporation 2007. Alle Rechte vorbehalten.

Project.sln(44): Solution file error MSB5008: 
Error parsing the solution configuration section in solution file. 
The entry "" is invalid.

更新
Visual Studio的语言是否重要?在我的本地机器上,我安装了英文版,而虚拟机上安装了德文版。

1 个答案:

答案 0 :(得分:2)

确保行结尾设置为Windows样式(CRLF)而不是Unix样式(LF)。如果设置不正确,它们可能会在您从源代码管理结账时无意中更改。

有关设置SVN行结束属性的详细信息,请参阅此question