5

Was löst Visual Studio | Bindevorgang tun, um Projekte in einer Lösung. SUO-Datei?Was bewirkt VS-Projektbindung?

Microsoft bietet Anweisungen auf How to: Bind or Unbind a Solution or Project, die zufällig den gefürchteten "nicht spezifizierten Fehler" beheben, der bei der Lösungsöffnung auftritt. In dieser MSDN forum Post wird ein Benutzer angegeben, dass sie ungebunden ist und ihre Projekte neu gebunden, um dieses Problem zu lösen.

Als ich die gleiche „nicht angegebener Fehler“ Problem auftritt, habe ich einige zusätzliche Graben gefunden, und dass die Lösung .suo Datei der einzige Kandidat war, die sich geändert hatte, nachdem ich das Problem gelöst hatte.

Ich las dieses answer to an SO question about .suo files, das effektiv wegwerfbar ist und zufällig war, das UE Problem durch einen abgestandenen Arbeitsplatz neu erstellen zu können, den ich herum gelegt hatte. Also ging ich voran und löschte die Lösung .suo Datei und öffnete die Lösung .sln Datei. Magisch, mein UE-Problem war auch mit diesem Arbeitsbereich weg.

Das führte mich zum Schluss, unbind | bind hat eine Art Auswirkung auf die .su-Datei, aber aufgrund der binären, proprietären Struktur der Dateien konnte ich nicht erkennen, was vor sich geht.

Meine Fragen:
1. Also was genau löst Visual Studio | Bindevorgang tun, um Projekte in einer Lösung. SUO-Datei?
2. Kann jemand vermuten, was diese "nicht spezifizierten Fehler" jetzt verursacht, dass ich die Verbindung zur .suo Datei finde?


Fußnote 1: Die MSDN article erklärt ein wenig über .suo Dateien, aber wirklich geht nicht ins Detail.

Fußnote 2: „Unbekannter Fehler“ auf Projekt/Lösung Öffnen erscheint durch here, verschiedene Recherchen ganz die bête noire als bewiesen zu sein, und diese old MS KB

+0

Welche Plug-Ins haben Sie installiert? –

+0

@EdwardThomson - Silverlight, ein paar Widget APIs von Drittanbietern und Elektrowerkzeuge. Nicht sicher, dass es mit den Plugins zusammenhängt, da wir andere Lösungen haben, die selten/jemals das gleiche Problem sehen. Durch die Logs habe ich festgestellt, dass die UEs nach oben kriechen, und sie treten außerhalb der Zeit auf, wenn die Plugins geladen werden. – GlenH7

Antwort

2

Sicher, die .suo-Datei ist auf dem Visual Studio speichert den Zustand der IDE. Wenn Sie später eine Lösung erneut öffnen, stellt alles die Art und Weise wieder her, wie Sie es verlassen haben. Der offensichtlichste sichtbare Effekt ist, dass Fenster in ihrer ursprünglichen Position und Größe wiederhergestellt werden. Und ja, das Binden der Lösung an den spezifischen Source-Control-Server, auf dem die Änderungen eingecheckt werden sollen, könnte auch dort gespeichert werden, es ist der logische Ort dafür.

"Unspezifizierter Fehler" ist ein sehr allgemeiner COM-Fehlercode mit dem Namen E_FAIL. Visual Studio verwendet viel COM-Code, das Add-In-System ist vollständig COM-basiert. Es ist ein lausiger Fehler, weil es nichts mehr bedeutet als "es hat nicht funktioniert, weiß nicht warum". Ähnlich wie die Rückgabe false von einer Funktion. Da ist irgendwo ein Programmierer bei Microsoft, der das Problem besser hätte melden können. Vielleicht war das nicht so einfach.

2

VS Projektbindungsspeicher, welche Projekte von der Quellcodeverwaltung verwaltet werden. Es wird in der SLN-Datei gespeichert.

Leider ist das Format, in dem es gespeichert wird, schwer für Quellcodeverwaltungssysteme zusammenzuführen. Daher werden die Bindungen häufig beschädigt, was beim Laden der Lösung zu fehlerhaften Meldungen "Projekte wurden der Quellcodeverwaltung hinzugefügt" führen. Um das zu beheben, löschen Sie den gesamten Abschnitt aus dem.sln-Datei, öffnen Sie in VS, und binden Sie dann die Lösung neu, die den Abschnitt korrekt erstellt.

BTW, das ganze Lösungsdateiformat ist ziemlich schrecklich zum Zusammenführen. Es riecht nach VS6, und der Source-Control-Bereich riecht nach SourceSafe. Ich wünschte, sie würden in ein MSBuild-basiertes Format wechseln, so wie sie es mit (fast allen) Projektdateien gemacht haben.

+1

Sie können die '.suo'-Dateien sowie die Antwort auf diese Antwort entfernen http://stackoverflow.com/questions/3299660/vs-corrupted-sln-file. – Pio

Verwandte Themen