Vollständige Kenntnis der .NET-Versionen und Abwärtskompatibilität

8

Ich habe eine .NET 2.0-Anwendung und ich plane, ein "intelligentes Installationsprogramm" zu machen, das nach der verfügbaren .NET-Version auf dem PC des Benutzers sucht und meinen spezifischen Port dafür installiert. Ich sah das:

  • Windows XP (SP2) wird mit .NET 2.0
  • geliefert
  • Windows Vista wird mit .NET 3.0
  • geliefert
  • Windows 7 kommt mit .NET 3.5
  • Windows 8 kommt mit .NET 4.5

Soweit ich weiß, ist das einzige, was nicht abwärtskompatibel ist, die CLR-Version, die nach .NET 4.0 geändert wird.

Wenn ich also nicht möchte, dass der Benutzer zusätzliches Framework nur für meine Anwendung installiert, sollte ich diese Versionen meiner App haben:

  • .NET 2.0 - XP (SP2 und höher), Vista (3.0 sollte 2.0 ausführen können) und 7 (3.5 sollte 2.0 ausführen können)
  • .NET 4.0 - wenn jemand NUR 4.0 installiert hat und kein anderes
  • hat
  • .NET 4.5 - für die Benutzer, die Windows 8 ohne andere .NET installiert haben

Habe ich Recht? Oder 4.5 / 4.0 sind abwärtskompatibel?

BEARBEITEN: Wenn eine der oberen Daten nicht richtig ist, korrigiere mich bitte

    
blez 17.12.2012, 13:55
quelle

2 Antworten

9
  

Soweit ich weiß, ist das einzige, was nicht abwärtskompatibel ist, die CLR-Version, die nach .NET 4.0 geändert wird.

Das ist nicht wahr. Sie können Ihre .NET2-kompilierte Anwendung auf dem .NET4-Framework ausführen lassen.

Sie müssen nur Folgendes zu Ihrer app.config hinzufügen:

%Vor%

Hinweis: Ich stimme @KingKronus zu, dh Why not just pick the lowest common denominator?

In Ihrem Fall wäre das .NET2 kompiliert und nur ein Satz von pdbs und ein Kompilierungssatz.

Ja, Sie müssten Ihre .NET2-kompilierte App testen, die auf der .net4-Laufzeitumgebung läuft, aber Sie müssten Ihre App trotzdem in jedem der Frameworks in Ihrer ursprünglichen Lösung testen.

    
wal 17.12.2012, 14:09
quelle
0
  1. Eigentlich müssen Sie es nicht manuell überprüfen. Ihre Anwendung zeigt nach dem Ausführen eine ordnungsgemäße Meldung an und fordert den Benutzer auf, die benötigte Version herunterzuladen und zu installieren.

  2. Wenn Sie Windows XP weiterhin unterstützen müssen, wählen Sie .NET 4.0. .NET 4.5 wird damit umgehen

VladL 17.12.2012 13:59
quelle

Tags und Links