I have a solution file that's become 'unstuck' from the projects it references, so that the project GUID references in the .sln point to incorrect GUIDs for the projects that they reference, and this problem persists into several of the projects themselves.
1) Is there an automated tool for fixing this? Anyone who's dealt with this issue knows that the most infuriating part is that it still builds in visual studio, while msbuild bombs out - I assume that this means that the necessary information is there, and could be fixed.