Wie wählen Sie Visual Studio-Lösung, die Plattform-Toolset für maximale Kompatibilität

Hintergrund

Ich bin offen sourcing ein paar alte Visual Studio-Anwendungen erstellte ich eine Weile zurück. Erstellt habe ich die neuen Lösungen mit meinem neuen VS2012 Umgebung für Sie, und bekommen haben die Projekte als git-repositories. Ich habe alles in Ordnung, die in Visual Studio 2012 mit keine änderungen an der source-code ist alles, was ich tun musste, war sicherzustellen, dass ich war die Verknüpfung der richtigen Bibliotheken in das neue Projekt-Konfigurationen.

Ich konfigurieren möchte, diese Projekte zu haben maximale Kompatibilität für andere Download das Projekt von Github. Auf dieser Maschine habe ich VS2010 installiert und den neuesten VS2012-version. Nachdem ich alles richtig für beide Projekte, die in VS2012, ich habe versucht, öffnen Sie Sie in VS2010.

Wenn ich versuchte, Sie zu bauen bekam ich einen einzigen Fehler:

Specified platform toolset (v110) is not installed or invalid.
Please make sure that a supported PlatformToolset value is selected.    
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets  518

Was Ich Auch Versuchte,

Also öffnete ich die Eigenschaften für das Projekt, ging Configuration Options --> General und die Plattform-Toolset war in der Tat zu Visual Studio 2012 (v110). Dieser Eingang ist ein drop-down-box und die v110 Wert wird nicht aufgeführt, stattdessen bekomme ich zwei Möglichkeiten:

  • v100
  • v90

Diese entsprechen VS2010 und VS2008 beziehungsweise. Wenn ich den Wert zu ändern v100 und neu erstellen, bekomme ich keine Fehler und mein Programm läuft einfach gut in mein Visual Studio 2010-Umgebung.

Wenn ich öffnen Sie das Projekt wieder in Visual Studio 2012, wenn die mir sagt, dass ich ein altes Projekt-Datei und fragt, ob ich aktualisieren möchten, ich sage ja und upgrades. Ich neu erstellen und ausführen, um sicherzustellen, dass alles noch funktioniert. Wenn ich öffnen Sie die Konfigurations-Optionen in VS2012 die Plattform-Toolset wieder auf die `Visual Studio 2012 (v110), sondern klicken auf den drop-down-Eingabe gibt es einige weitere Möglichkeiten aufgeführt:

  • Visual Studio 2012 (v110)
  • v110_wp80
  • Visual Studio 2012, Windows XP (v110_xp)
  • Visual Studio 2010 (v100)
  • Visual Studio 2008 (v90)
  • ‹inherit from parent oder project defaults›

Meine Fragen

Dies führte mich zu mehreren Fragen. Ich werde posieren Sie alle. Es wäre schön, Holen Sie so viele Informationen wie ich kann, aber eine gute Antwort auf nur eine von Ihnen würde wohl mein problem lösen.

  • Wenn ich nicht mit spezifischen Funktionen der neueren Versionen von Visual Studio, ist es möglich, eine Lösung, die geöffnet werden können und laufen ohne änderungen in so vielen Versionen wie möglich (dh. 2008, 2010 oder 2012)? Wenn ja, wie?
  • Wenn ich die Plattform-Toolset , v90 (VS2008) innerhalb von Visual Studio 2012, und es ist in der Lage zu erstellen und auszuführen, bedeutet dies, dass es erstellen und ausführen für Benutzer mit VS2012, VS2010 und VS2008?
  • Was genau macht der <inherit for parent or project defaults> - option? Was würde das Projekt standardmäßig eingerichtet werden? Können diese verwendet werden, um zu sagen, Visual Studio, um zu versuchen, um welche installiert Plattform-Toolset arbeiten.
  • Gibt es andere Optionen neben Plattform-Toolset in Visual Studio, die ich einstellen kann, erhöhen die Kompatibilität mit anderen Entwicklungsumgebungen?

InformationsquelleAutor Cory Gross | 2013-08-07

Schreibe einen Kommentar