Error: Visual Studio project or solution appears to be under source control, but isn't...

The following question was raised on an aspadvice (product-vsnet) list this morning:

“Hey there, I moved a solution over from one dev box to another. The old box was connected to source control, however, the new one is not. Whenever I open up the project on the new box, I get an error stating that it believes the project to be under control, but cannot connect. I have removed all of the Source Safe files, but still get the error...“

For the record (and google-ability), the message that this Visual Studio user encountered was (probably):

“The solution appears to be under source control, but its binding information cannot be found. It is possible that the MSSCCPRJ.SCC file or another item that holds the source control settings for the solution, has been deleted. Because it is not possible to recover this missing information automatically, the projects whose bindings are missing will be treated as not under source control.”

The help topic for this error message, which advises you to 'correct this error' by adding the solution to source control, is not too helpful. My bad. Hopefully, the following information (from my response to the aspadvice email) will make up for this lapse.

This is a known issue and we're working on implementing a sensible fix in the next version of Visual Studio. In the meantime, you can workaround this issue in a few ways. You can:

  1. Ignore this message (because it doesn't really matter).
  2. Add the solution to source control as a new item.
    --OR--
    Use File|Source Control|Change Source Control dialog box to bind it to a new location in your scc database.
  3. Prevent the message from ever again appearing on your desktop by manually editing the solution and project files to remove all source-control references... Stuff like the following strings:
    • SccProjectName = "SAK"
    • SccLocalPath = "SAK"
    • SccAuxPath = "SAK"
    • SccProvider = "SAK"

Option #1 is recommended. I add option #2 for completeness only. If you go with option #3, proceed with caution.

For background information on source control bindings, see What is a Source Control Binding?

++++++++++++++++++++++++
Il presente posting viene fornito “così come é”, senza garanzie, e non conferisce alcun diritto.