We have an application based on Visual Studio Isolated Shell that creates solution files named *.mysln. We now want to build this solution on a build server, so I tried to call MSBuild on the solution file myself.
This leads to the error "MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1."
However, if I rename this same file to *.sln it does work as expected, which indicates that MSBuild somehow knows (presumably by the file extension) that it has to work with a solution file.
Is there any way this can be specified when calling MSBuild, so that it works with custom solution files?
I think there is no way right now.
The solution file is a very primitive file, you can't comment line in it, for example. So I guess there's no convention about how a solution file must look, just "if you write this text in the file, it is mean something". So you can't be sure that a file is a solution file.
I suggest you open a bug for Microsoft.