Heute habe ich .NET Framework 4.5 auf meinem Computer installiert und erwartet, dass es von Visual Studio 2010 aus verwendet werden kann, da es sich nur um ein kleines Update handelt, das für Visual Studio 2010 keine Probleme bereiten sollte. Leider entferne ich bestimmte 4.0 nicht einmal manuell Das Hinzufügen der entsprechenden 4.5-Assemblys führte dazu, dass die ursprünglichen 4.0-Assemblys im Projekt weiterhin referenziert werden.
Ist es möglich, Version 4.5 von Visual Studio 2010 aus als Ziel festzulegen, und wenn ja, wie? Ich würde wirklich gerne die Bänder verwenden ...
visual-studio-2010
visual-studio
.net-4.5
Golvellius
quelle
quelle
Antworten:
Jede Version von Visual Studio vor Visual Studio 2010 ist an ein bestimmtes .NET-Framework gebunden. (VS2008 ist .NET 3.5, VS2005 ist .NET 2.0, VS2003 ist .NET1.1) Visual Studio 2010 und höher ermöglicht das Targeting früherer Framework-Versionen, kann jedoch nicht für zukünftige Versionen verwendet werden. Sie müssen Visual Studio 2012 verwenden, um .NET 4.5 verwenden zu können.
quelle
Es gibt ziemlich begrenzte Szenarien, in denen ich mir vorstellen kann, wo dies nützlich wäre, aber nehmen wir an, Sie können kein Geld für den Kauf von VS2012 oder etwas in diesem Sinne erhalten. Wenn dies der Fall ist und Sie Windows 7+ und VS 2010 haben, können Sie möglicherweise den folgenden von mir zusammengestellten Hack verwenden, der zu funktionieren scheint (aber ich habe eine Anwendung mit dieser Methode noch nicht vollständig bereitgestellt).
Sichern Sie Ihre Projektdatei !!!
Laden Sie das Windows 8 SDK herunter und installieren Sie es, das das .NET 4.5 SDK enthält.
Öffnen Sie Ihr Projekt in VS2010.
Erstellen Sie in Ihrem Projekt eine Textdatei
Compile_4_5_CSharp.targets
mit dem folgenden Inhalt. (Oder es einfach herunterladen hier - Stellen Sie sicher , dass die „.txt“ Erweiterung aus dem Dateinamen entfernen):Entladen Sie Ihr Projekt (Rechtsklick -> Entladen).
Bearbeiten Sie die Projektdatei (Rechtsklick -> Bearbeiten * .csproj).
Nehmen Sie die folgenden Änderungen in der Projektdatei vor:
ein. Ersetzen Sie die Standardeinstellung
Microsoft.CSharp.targets
durch die in Schritt 4 erstellte Zieldateib. Ändern Sie die Standardplattform in
.NET 4.5
c. Fügen Sie eine
AnyCPU
Plattform hinzu, um das Targeting anderer Frameworks zu ermöglichen, wie in den Projekteigenschaften angegeben. Dies sollte kurz vor dem ersten<ItemGroup>
Tag in der Datei hinzugefügt werdenSpeichern Sie Ihre Änderungen und schließen Sie die
*.csproj
Datei.Laden Sie Ihr Projekt neu (Rechtsklick -> Projekt neu laden).
Stellen Sie im Konfigurationsmanager (Build -> Configuration Manager) sicher, dass die Plattform ".NET 4.5" für Ihr Projekt ausgewählt ist.
Erstellen Sie im Konfigurationsmanager noch eine neue Lösungsplattform für ".NET 4.5" (Sie können sie auf "Beliebige CPU" basieren) und stellen Sie sicher, dass ".NET 4.5" für die Lösung ausgewählt ist.
Erstellen Sie Ihr Projekt und suchen Sie nach Fehlern.
Angenommen, der Build ist abgeschlossen, können Sie überprüfen, ob Sie tatsächlich auf 4.5 abzielen, indem Sie Ihrem Quellcode einen Verweis auf eine 4.5-spezifische Klasse hinzufügen:
Wenn Sie mit der Plattform ".NET 4.5" kompilieren, sollte der Build erfolgreich sein. Wenn Sie unter der Plattform "Beliebige CPU" kompilieren, sollte ein Compilerfehler angezeigt werden:
quelle
<OutputPath>bin\</OutputPath>
Folgendes hinzu: Zur ersten PropertyGroup, als der folgende Fehler auftrat: Die OutputPath-Eigenschaft ist nicht für das Projekt 'Projektname' festgelegt.Zu Ihrer Information, wenn Sie ein Installationspaket in VS2010 erstellen möchten, zielt es leider nur auf .NET 4 ab. Um dies zu umgehen, müssen Sie NET 4.5 als Startbedingung hinzufügen.
Fügen Sie den Startbedingungen des Installationsprogramms Folgendes hinzu (Rechtsklick, Ansicht, Startbedingungen).
Klicken Sie unter "Zielmaschine suchen" mit der rechten Maustaste und wählen Sie "Registrierungssuche hinzufügen".
Neue "Startbedingung" hinzufügen:
Wo:
378389 = .NET Framework 4.5
378675 = .NET Framework 4.5.1 wurde unter Windows 8.1 installiert
378758 = .NET Framework 4.5.1 unter Windows 8, Windows 7 SP1 oder Windows Vista SP2 installiert
379893 = .NET Framework 4.5.2
Referenz der Startbedingung: http://msdn.microsoft.com/en-us/library/vstudio/xxyh2e6a(v=vs.100).aspx
quelle
Ich habe Probleme mit der Integration von VS2010 / DNFW 4.5 und habe dies endlich zum Laufen gebracht. Ab VS 2008 wurde ein von Visual Studio verwendeter Cache mit Assemblys eingeführt, der als "referenzierte Assemblys" bezeichnet wird. Dieser Dateicache für VS 2010 befindet sich unter \ Reference Assemblies \ Microsoft \ Framework.NetFramework \ v4.0. Visual Studio lädt Framework-Assemblys von diesem Speicherort anstatt aus dem Framework-Installationsverzeichnis. Wenn Microsoft angibt, dass VS 2010 DNFW 4.5 nicht unterstützt, bedeutet dies, dass dieses Verzeichnis bei der Installation von DNFW 4.5 nicht aktualisiert wird. Sobald Sie die Dateien an diesem Speicherort durch die aktualisierten DNFW 4.5-Dateien ersetzt haben, werden Sie feststellen, dass VS 2010 problemlos mit DNFW 4.5 funktioniert.
quelle
Von einer anderen Suche. Hat für mich gearbeitet!
"Sie können Visual Studio 2010 verwenden und es unterstützt es, sofern Ihr Betriebssystem .NET 4.5 unterstützt.
Klicken Sie mit der rechten Maustaste auf Ihre Lösung, um eine Referenz hinzuzufügen (wie Sie es tun). Wenn das Dialogfeld angezeigt wird, wählen Sie Durchsuchen und navigieren Sie zum folgenden Ordner:
C: \ Programme (x86) \ Referenzassemblies \ Microsoft \ Framework \ .Net Framework \ 4.5
Sie werden es dort finden. "
quelle