Diskussion zur Kompatiblität von Framework-Versionen

  • VB.NET

Es gibt 15 Antworten in diesem Thema. Der letzte Beitrag () ist von sonne75.

    Ich suche noch, ich habe es hier dauernd gelesen, als Rufe nach "Mach FW runter" kamen, als Warnung. Bisher aber noch nicht gefunden. Probier es doch aus, mach auf 3.5, wenn es auf 4.0 läuft, dann ist alles in Ordnung.

    EDIT:
    @Trade , @SimpleVideo
    Hier steht sowas ähnliches:

    Die .NET Framework-Versionen 2.0, 3.0 und 3.5 werden mit der gleichen CLR-Version (CLR 2.0) erstellt. Diese Versionen entsprechen aufeinander folgenden Ebenen einer einzelnen Installation. Jede Version wird inkrementell auf den früheren Versionen aufgebaut. Die Versionen 2.0, 3.0 und 3.5 können auf einem Computer nicht parallel ausgeführt werden. Wenn Sie Version 3.5 installieren, rufen Sie automatisch die 2.0- und 3.0-Ebenen und Apps, die für die Versionen 2.0 erstellt wurden, ab, und 3.0 und 3.5 können alle auf Version 3.5 ausgeführt werden. In .NET Framework 4 ist dieser Ebenenansatz nicht mehr vorhanden, sodass die Apps, die für 2.0 3.0 oder 3.5 erstellt wurden, funktionieren nicht unter Version 4 oder höher.


    msdn.microsoft.com/de-de/library/bb822049(v=vs.110).aspx

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „sonne75“ ()

    Oha, nice, dann bin ich ja froh, dass ich 4.0 gesetzt habe.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Ich habe es gefunden:

    Informationen über die .NET Framework Versionen

    Da ist ein nettes Bildchen über Kompabilität und hier ein Zitat:

    Es gilt nicht: "Bei 2.0 funktioniert die Assembly mit allem, was größer ist". Es ist so, dass .NET 2.0, 3.0 und 3.5 auf der CLR-Engine 2.0 aufbauen. Bei .NET 4.0 und 4.5 wird jedoch eine neuere CLR-Engine (4.0) verwendet. Diese hat diverse Optimierungen und ist nicht kompatibel zur älteren Engine.
    ...
    Daraus geht z. B. hervor, dass ein .NET 3.5-Programm genau das .NET-Framework 3.5 benötigt. .NET 4.0 oder höher alleine reicht nicht.
    Hm, also kann man 3.5er-Anwendungen gar nicht auf modernen Frameworksystemen ausführen. Ist ja ganz schön blöd. Dann mach 4.0, sollte jeder PC haben (schafft auch XP noch) und man kann höher.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Ich würde trotztem 3.5 oder sogar 2.0 (wenn du ohne Linq auskommst) sagen. Ich glaube jeder Windows 8-Nutzer hat mittlerweile das 3.5er Framework installiert und damit sollte es auf jedem PC laufen.
    Und was, wenn die meisten User (so wie ich) .NET 4 und höher installiert haben?
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

    nafets3646 schrieb:

    Ich glaube jeder Windows 8-Nutzer hat mittlerweile das 3.5er Framework installiert

    Wieso sollte er? Wenn er nicht gerade .NET-Programmierer ist, der unbedingt FW 3.5 braucht?

    @Trade
    Die beiden können parallel installiert sein. Aber standardmäßig ist bei Win8 4.5 dabei, bei Win7 3.5 wohl.

    Jetzt ist die Frage, wieso läuft meine Anwendung (FW 4.0) auf Win7-Rechnern, die keine zusätzliche Installationen hatten?
    Achsoo, wenn man die parallel installiert hat geht das, aber mit dem 4.0 alleine zum Beispiel kann man keine 3.5er ausführen. Nadenn.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Das 3.5er wird dann halt von Windows 8 automatisch gedownloaded, da muss der Nutzer nicht mehr machen als auf einen Button in einem kleinen Popup zu klicken und kurz zu warten...

    @sonne75
    superuser.com/questions/298025…et-4-installed-by-default
    @nafets3646
    Ah, danke, auf der Seite von MSDN stand es nicht.
    Da steht aber, "4.0 Client". Ich habe gelesen, dass sie Probleme macht und man auf 4.0. umstellen sollte (das Projekt), habe ich auch gemacht. Wenn aber nur "Client" automatisch mit Updates kommt, kann mein Programm laufen?
    Sie widersprechen sich selbst (einer sagt, man soll nur Client nutzen, anderer nur Full). Ich habe irgendwo aufgeschnappt, dass Client Probleme macht, und irgendwo hatte ich tatsächlich was, wo er mir das angemeckert hat (obwohl ich nichts von den Features nutze). Ich weiß leider nicht mehr, was und wann.
    Mein Programm (welches ziemlich umfangreich ist) ist fertig (Testphase), ich hätte jetzt Angst auf instabilere Version umzustellen, es hat schon so Probleme, aufgrund von Timinggeschichten und zu umfangreichem DataSet... ;(