We have a server that gets all files from TFS and uses Nant w/ Visual studio to compile our projects. Basically nant issues a command line statement to get VS to build a given solution.
Everything was working great, until I upgraded our clients to 2008.
I went through and upgraded all our solutions.
I installed vs 2008 on the server. But when I try to build from the command line, it tells me that the solution file “is from a previous version of this application and must be converted in order to build in this version of the application.”
I tried directly copying my solution file (skipping the source control step) directly to the server but I get the same message.
If I try to build it from the command line with VS 2005 it tells me that the solution is too new!!
So 2005 says the solution is too new, 2008 says it is too old!
The solution on the server has the “version 9” icon, just like on my laptop.
The solution file starts with:
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Even thought I compared the solution files and found them to be exactly the same using a diff compare tool, I allowed the server to run the “upgrade” process on the solutions. I didn’t save any of the changes it made, but from then on it recognized those files as having been already upgraded.
I even replaced the “server upgraded” solution files with the old solution files that it didn’t like and it continued to work just fine.
There must be some other files stored somewhere that made it think that it hadn’t been upgraded yet.
This isn’t a great solution, but it works at least.