Ich habe diese Frage gestern - Es wurde von einigen Leuten als "exaktes Duplikat" geschlossen, die sich nicht die Zeit genommen haben, Fragen / Kommentare sorgfältig zu lesen! Also, noch einen Versuch - vielleicht bekommt es die Zeit, eine funktionierende Antwort zu erhalten, bevor es wieder aus einem sinnlosen Grund geschlossen wird.
Microsoft hat kürzlich einige "Updates" für .NET Framework veröffentlicht. Leider kann ich nicht herausfinden, welche Version installiert ist. Framework-Version bleibt auf 4.0.30319.239
.
Danke für etwas Aufklärung; -)
PS: Das Setzen von supportedRuntime in app.config auf Version = 4.0.2 veranlasst die Anwendung beim Start zu sagen, dass 4.0.2 nicht installiert ist (in kürzester Zeit - also muss es einen Ort geben, wo die "echte" Version sein kann gefunden).
Dies sollte keinen Unterschied machen. Sie zielen nicht auf bestimmte Build-Nummern des Frameworks ab, sondern auf die Release-Nummer, in diesem Fall 4.0. Was machst du da, wo du die genaue Build-Nummer kennen musst?
WTF - warum Buildcounter benutzen?!
Warum sollten Sie nicht? Es beschreibt die genaue Version des Frameworks. In der Regel geben Sie keine Software mit einer Runde "Dies ist Version 1.0.0.0" frei, da dies bei der Versionierung von Updates / Hotfixes usw. zu Verwüstungen führen kann.
Einfach Targeting auf .NET 4.0 sollte ausreichen.
Lass es uns versuchen:
Wenn Sie eine spezielle Funktion / Methode in einer Klasse kennen, die nur in .NET 4.02, aber nicht in .NET 4.0 vorhanden ist, würde ich die Reflektion z. Erhalte eine Liste aller Methoden einer Klasse oder die Signatur einer bestimmten Methode.
>Wenn nur interne (Methoden / Eigenschaften) Änderungen vorgenommen werden, können Sie ILSpy verwenden, um nach solchen Änderungen zu suchen Verwenden Sie erneut die Reflektion, um nach den Änderungen zu suchen.
Auf der anderen Seite bin ich mir nicht sicher, ob einige Sicherheitsbeschränkungen Sie daran hindern könnten, Reflektionen zu machen.