Ich habe meine vs2010-Lösung mit vs2012 geöffnet, aber von 2008 bis 2010 wurde keine Konvertierung durchgeführt. Meine Lösung bleibt also immer noch die gleiche wie 10 Etiketten. Wenn ich eine neue Lösung mache, hat sie natürlich 11 Etiketten. Ich habe kein Problem damit, aber ich bin neugierig. Gibt es einen Unterschied? Wenn ja, wie konvertiere ich in eine vs2012-Lösung?
68
Eine manuelle Bearbeitung der Lösungsdatei ist nicht erforderlich oder wird empfohlen. Öffnen Sie einfach die VS2010-Lösung in VS2012, klicken Sie mit der linken Maustaste auf die Lösung (ganz oben im Projektmappen-Explorer) und verwenden Sie dann Datei | Speichern unter , um die Originaldatei zu überschreiben. Dadurch wird die VS2010-Lösungsdatei effektiv in eine VS2012-Lösungsdatei konvertiert.
quelle
Es geht um Visual Studio 2012-Kompatibilität
Wenn Sie Ihre Assets in Visual Studio 2010 mit Service Pack 1 (SP1) erstellt haben, werden viele davon in Visual Studio 2012 geladen und ausgeführt, ohne dass Sie weitere Maßnahmen ergreifen müssen.
Viele Assets werden auch in Visual Studio 2010 mit SP1 ohne Probleme wieder geöffnet, selbst nachdem Sie diese Assets in Visual Studio 2012 geöffnet haben
quelle
Für C ++ - Projekte macht es einen Unterschied, da der 2012-Compiler (VC11) nur für Projekte verwendet wird, die explizit 2012 sind, nicht für 2010-Projekte, die in VS 2012 geöffnet wurden. Einige C ++ 11-Verbesserungen sind mit dem VC11-Compiler verfügbar, jedoch nicht mit VC10 ( eine Zusammenfassung finden Sie in dieser SO-Antwort ), einschließlich:
Um von einem VS 2010-Projekt zu einem VS2012-Projekt zu konvertieren , müssen Sie die Lösungsdatei oder das Speichern unter dem vorhandenen Projekt nicht manuell bearbeiten . Stattdessen:
Aus MSDNs " Gewusst wie: Aktualisieren von Visual C ++ - Projekten auf Visual Studio 2012 "
(Diese Seite wurde über den MSDN-Link von @ Joachim verlinkt , aber ich wollte die Antwort hier auf SO haben, da eine Reihe anderer Antworten manuelle Problemumgehungen anstelle dieses VS 2012 vorschlug Merkmal)
quelle
In meinem Fall hatte ich einige Visual Source Safe-Inhalte (mein Projekt wurde mit Visual Studio 2003/2005 erstellt, ja, sehr alt!)
Nachdem ich das VSS-Material manuell entfernt hatte, war die Konvertierung erfolgreich. PS: Ich weiß, es geht um VS2010, aber vielleicht hilft das anderen.
quelle
Sie können ein Projekt von VS2010 nach VS2012 konvertieren, indem Sie folgende Schritte ausführen:
Fügen Sie das 2010-Projekt zu Ihrer VS2012-Lösung hinzu, indem Sie im Projektmappen-Explorer mit der rechten Maustaste auf Ihre Lösung klicken und Hinzufügen -> Vorhandenes Projekt ... auswählen.
Das Projekt wird in der Lösung angezeigt und an seinen Namen angehängt (Visual Studio 2010).
Klicken Sie mit der rechten Maustaste auf das hinzugefügte Projekt und wählen Sie Eigenschaften.
Ändern Sie im Bereich Konfigurationseigenschaften -> Allgemein die Einstellung im Feld Platform Toolset in Visual Studio 2012 (v110).
Wiederholen Sie diesen Vorgang für jeden Konfigurationstyp, z. B. Release und Debug.
quelle
Ich bin auf diese Frage gestoßen, als ich nach einer Lösung für ein bestimmtes Problem gesucht habe: MSBuild konnte das Veröffentlichungsziel nicht für eine VS2012-Lösung ausführen, die in VS2010 gestartet wurde, als sie über die Befehlszeile aufgerufen wurde (speziell über TeamCity):
MSBuild suchte nach den Azure SDK 2.3-Zielen am VS10-Speicherort (C: \ Programme (x86) \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Windows Azure Tools \ 2.3 \ Microsoft.WindowsAzure.targets). Die Ursache wird von Sayed Ibrahim Hashimi in einem Blog-Beitrag erklärt und läuft , wie ich es verstanden habe, auf einige Entscheidungen hinaus, die sie getroffen haben, während sie die versionierungsübergreifende Kompatibilität für Lösungsdateien ermöglichen. Die Lösung war einfach: Fügen Sie dem MSBuild-Aufruf die VisualStudioVersion-Eigenschaft hinzu:
In der Praxis überschreibt dies Folgendes in jeder csproj-Datei:
Vermutlich könnten Sie das gleiche Ergebnis erzielen, wenn Sie alle von Hand bearbeiten, um 10.0 durch 11.0 zu ersetzen, aber das könnte die Abwärtskompatibilität beeinträchtigen - ich habe es nicht versucht. Ich habe auch kein Update auf VS2013 versucht, um festzustellen, ob das Problem weiterhin besteht.
Zum Abschluss beantworten Sie die Frage: Ja, es gibt einige Unterschiede, bevor Sie "konvertieren" (unter Verwendung einer der von anderen Antwortenden angebotenen Methoden), und einige Unterschiede bleiben danach bestehen.
quelle
Dies ist etwas anders, aber in die gleiche Richtung, falls es jemandem hilft:
Ich habe ein Projekt geladen, bei dem es so aussah, als würde es geladen, und dann alle Projekte als nicht verfügbar angezeigt. Der Migrationsbericht enthielt keine Fehler. Ich habe viele Male versucht, die Lösung und die Projekte neu zu laden, wobei ich verschiedene Methoden verwendet habe, einschließlich Vorschläge hier.
Schließlich fand ich eine Option "Fehler beheben", als ich im Projektmappen-Explorer mit der rechten Maustaste auf die Lösung klickte. VS hat erneut einen Ladevorgang durchlaufen und es hat funktioniert. keine Probleme.
Ich weiß nicht, was es damals anders gemacht hat, aber anscheinend hat es einen Unterschied gemacht.
quelle
Es ist zu einfach, einfach die .sol-Datei zu bearbeiten und die Version auf 11 zu ändern
so was
Microsoft Visual Studio-Lösungsdatei, Format Version 12.00
Visual Studio 2012quelle