Autor Beitrag
ripmav
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: So 13.09.09 16:29 
Hallo,
ich möchte die .NET Version in meinem C# Programm ermitteln.
Wenn nämlich nicht .NET 3.5 installiert ist, sondern z.B. .NET 2.0, läuft das Programm, aber bei manchen Befehlen stürzt es ab.

Ich weiss, dass Environment.Version die Runtime Version angibt. Diese ist bei .NET 3.5 aber 2.0. Somit ist Environment.Version nicht nutzbar für mich.

Gibt es eine Möglichkeit, die wirkliche Version des .NET Frameworks zu erhalten, möglichst ohne Registry Zugriffe?

MfG,
Max


Moderiert von user profile iconChristian S.: Topic aus C# - Die Sprache verschoben am So 13.09.2009 um 16:31
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: So 13.09.09 18:03 
user profile iconripmav hat folgendes geschrieben Zum zitierten Posting springen:
aber bei manchen Befehlen stürzt es ab.
Also kannst du doch die entstandene Exception (DllNotFoundException, nehme ich mal an) auffangen und eine entsprechende Meldung ausgeben. Der catch-Handler darf sich allerdings nicht direkt in der verursachenden Methode befinden, sondern weiter unten im Call-Stack.

Ansonsten ist die Registry der sauberste Weg.

_________________
>λ=
ripmav Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19



BeitragVerfasst: Mo 14.09.09 13:33 
Hallo,
danke für die Antwort. Das mit den Exceptions ist natürlich eine Idee.

Ich habe jetzt mal zum Testen als Target Framework .Net 2.0 eingestellt.
Die Anwendung kompiliert und läuft ohne Probleme. Damit brauche ich das .Net Framework 3.5 gar nicht mehr.

Da spricht doch nichts dagegen, oder?