Gewusst wie: Konfigurieren einer App für die Unterstützung von .NET Framework 4 oder 4.5How to: Configure an App to Support .NET Framework 4 or 4.5

Alle Apps, die die Common Language Runtime (CLR) hosten, müssen die CLR starten oder aktivieren, um verwalteten Code auszuführen.All apps that host the common language runtime (CLR) need to start, or activate, the CLR in order to run managed code. Normalerweise wird eine .NET Framework-App in der CLR-Version ausgeführt, für die sie erstellt wurde, aber Sie können dieses Verhalten für Desktop-Apps ändern, indem Sie eine Anwendungskonfigurationsdatei (auch als app.config-Datei bezeichnet) verwenden.Typically, a .NET Framework app runs on the version of the CLR that it was built on, but you can change this behavior for desktop apps by using an application configuration file (sometimes referred to as an app.config file). Das Standardaktivierungsverhalten für Windows Store-Apps oder Windows Phone-Apps kann jedoch nicht mit einer Anwendungskonfigurationsdatei geändert werden.However, you cannot change the default activation behavior for Windows Store apps or Windows Phone apps by using an application configuration file. In diesem Artikel wird beschrieben, wie Sie eine Desktop-App in einer anderen Version von .NET Framework ausführen, und wie auf die Version 4 oder 4.5 abgezielt werden kann.This article explains how to enable your desktop app to run on another version of the .NET Framework and provides an example of how to target version 4 or 4.5.

Die Version von .NET Framework, in der eine Anwendung ausgeführt wird, wird in folgender Reihenfolge ermittelt:The version of the .NET Framework that an app runs on is determined in the following order:

  • Konfigurationsdatei.Configuration file.

    Wenn die Anwendungskonfigurationsdatei <supportedRuntime>-Einträge enthält, die mindestens eine .NET Framework-Version angeben, und eine dieser Versionen auf dem Computer des Benutzers vorhanden ist, wird die Anwendung in dieser Version ausgeführt.If the application configuration file includes <supportedRuntime> entries that specify one or more .NET Framework versions, and one of those versions is present on the user's computer, the app runs on that version. Die Konfigurationsdatei liest <supportedRuntime>-Einträge in der Reihenfolge, in der sie aufgelistet werden, und verwendet die erste aufgeführte .NET Framework-Version, die auf dem Computer des Benutzers vorhanden ist.The configuration file reads <supportedRuntime> entries in the order they are listed, and uses the first .NET Framework version listed that is present on the user's computer. (Verwenden Sie das <requiredRuntime>-Element für Version 1.0.)(Use the <requiredRuntime> element for version 1.0.)

  • Kompilierte Version.Compiled version.

    Wenn keine Konfigurationsdatei vorhanden ist, aber die Version von .NET Framework, für die die App erstellt wurde, auf dem Computer des Benutzers installiert ist, wird die App in dieser Version ausgeführt.If there is no configuration file, but the version of the .NET Framework that the app was built on is present on the user's computer, the app runs on that version.

  • Neueste installierte Version.Latest version installed.

    Wenn die .NET Framework-Version, für die die App erstellt wurde, nicht vorhanden ist, und die Version nicht im <supportedRuntime>-Element der Konfigurationsdatei angegeben ist, wird die App in der neuesten .NET Framework-Version ausgeführt, die auf dem Computer des Benutzers installiert ist.If the version of the .NET Framework that the app was built on is not present and a configuration file does not specify a version in a <supportedRuntime> element, the app tries to run on the latest version of the .NET Framework that is present on the user's computer.

    Allerdings werden .NET Framework 1.0-, 1.1-, 2.0-, 3.0- und 3.5-Apps nicht automatisch in .NET Framework 4 oder höher ausgeführt, und in einigen Fällen kann der Benutzer eine Fehlermeldung erhalten und aufgefordert werden, .NET Framework 3.5 zu installieren.However, .NET Framework 1.0, 1.1, 2.0, 3.0, and 3.5 apps do not automatically run on the .NET Framework 4 or later, and in some cases, the user may receive an error and may be prompted to install the .NET Framework 3.5. Das Aktivierungsverhalten kann auch je nach Betriebssystem des Benutzers unterschiedlich sein, da verschiedene Versionen des Windows-Systems unterschiedliche Versionen von .NET Framework enthalten.The activation behavior may also depend on the user’s operating system, because different versions of Windows system include different versions of the .NET Framework. Wenn Ihre App .NET Framework 3.5 und 4 oder höher unterstützt, wird empfohlen, dies mit mehreren Einträgen in der Konfigurationsdatei kenntlich zu machen, um .NET Framework-Initialisierungsfehler zu vermeiden.If your app supports both the .NET Framework 3.5 and 4 or later, we recommend that you indicate this with multiple entries in the configuration file to avoid .NET Framework initialization errors. Weitere Informationen finden Sie unter Versionen und Abhängigkeiten.For more information, see Versions and Dependencies.

Sie sollten ggf. auch die .NET Framework 3.5-Apps so konfigurieren, dass sie unter .NET Framework 4 oder 4.5 ausgeführt werden können, und zwar auch bei Computern, auf denen .NET Framework 3.5 installiert ist, da Sie so von den Leistungsverbesserungen in den Versionen 4 und 4.5 profitieren können.You might also want to configure your .NET Framework 3.5 apps to run on the .NET Framework 4 or 4.5, even on computers that have the .NET Framework 3.5 installed, to take advantage of the performance improvements in versions 4 and 4.5.

Wichtig

Es wird empfohlen, die Apps immer für jede .NET Framework-Version zu testen, die die App unterstützen soll.We recommend that you always test your app on every .NET Framework version that you support. Weitere Informationen zum Upgrade von Anwendungen zur Unterstützung höherer .NET Framework-Versionen erhalten Sie unter Versionskompatibilität.See Version Compatibility for information about upgrading your application to support later .NET Framework versions.

Informationen zum Ändern der .NET Framework 1.0- und 1.1-Apps für Windows 7 und Windows 8 finden Sie unter Migrieren von .NET Framework 1.1.For information about modifying your .NET Framework 1.0 and 1.1 apps to support Windows 7 and Windows 8, see Migrating from the .NET Framework 1.1.

So konfigurieren Sie Ihre App für .NET Framework 4 oder 4.5To configure your app to run on the .NET Framework 4 or 4.5

  1. Suchen Sie die Konfigurationsdatei für das .NET Framework-Projekt, oder fügen Sie sie hinzu.Add or locate the configuration file for the .NET Framework project. Die Konfigurationsdatei für eine App befindet sich im gleichen Verzeichnis wie die App und hat den gleichen Namen wie die App, weist aber eine CONFIG-Erweiterung auf.The configuration file for an app is in the same directory and has the same name as the app, but has a .config extension. Die Anwendungskonfigurationsdatei für die App "MyExecutable.exe" heißt z. B. "MyExecutable.exe.config".For example, for an app named MyExecutable.exe, the application configuration file is named MyExecutable.exe.config.

    Um eine Konfigurationsdatei über die Visual Studio-Menüleiste hinzuzufügen, wählen Sie Projekt, Neues Element hinzufügen aus.To add a configuration file, on the Visual Studio menu bar, choose Project, Add New Item. Wählen Sie im linken Bereich Allgemein, und wählen Sie dann Konfigurationsdatei aus.Choose General from the left pane, and then choose Configuration File. Benennen Sie die Konfigurationsdatei „appName.exe.config“. Diese Menüelemente sind nicht für Windows Store-App- oder Windows Phone-App-Projekte verfügbar, da die Aktivierungsrichtlinie auf diesen Plattformen nicht geändert werden kann.Name the configuration file appName.exe.config. These menu choices are not available for Windows Store app or Windows phone app projects, because you cannot change the activation policy on those platforms.

  2. Fügen Sie das <supportedRuntime>-Element der Anwendungskonfigurationsdatei wie folgt hinzu:Add the <supportedRuntime> element as follows to the application configuration file:

    <configuration>  
      <startup>  
        <supportedRuntime version="<version>"/>  
      </startup>  
    </configuration>  
    

    wobei <version> die CLR-Version angibt, die der .NET Framework-Version entspricht, die von Ihrer App unterstützt wird.where <version> specifies the CLR version that aligns with the .NET Framework version that your app supports. Verwenden Sie diese Zeichenfolgen:Use the following strings:

    • .NET Framework 1.0: "v1.0.3705".NET Framework 1.0: "v1.0.3705"

    • .NET Framework 1.1: "v1.1.4322".NET Framework 1.1: "v1.1.4322"

    • .NET Framework 2.0, 3.0 und 3.5: "v2.0.50727".NET Framework 2.0, 3.0, and 3.5: "v2.0.50727"

    • .NET Framework 4 und 4.5 (einschließlich Punktreleases wie 4.5.1): „v4.0“.NET Framework 4 and 4.5 (including point releases such as 4.5.1): "v4.0"

    Sie können mehrere <supportedRuntime>-Elemente nach Priorität aufgelistet hinzufügen, um Unterstützung für mehrere Versionen von .NET Framework anzugeben.You can add multiple <supportedRuntime> elements, listed in order of preference, to specify support for multiple versions of the .NET Framework.

Die folgende Tabelle zeigt, wie mit den Einstellungen der Anwendungskonfigurationsdatei und den auf einem Computer installierten .NET Framework-Versionen die Version ermittelt wird, in der eine .NET Framework 3.5-App ausgeführt wird.The following table demonstrates how application configuration file settings and the .NET Framework versions installed on a computer determine the version that a .NET Framework 3.5 app runs on. Die Beispiele beziehen sich konkret auf eine .NET Framework 3.5-Anwendung, allerdings folgen Zielanwendungen, die mit früheren .NET Framework-Versionen erstellt werden, der gleichen Logik.The examples are specific to a .NET Framework 3.5 application, but you can use similar logic to target applications built with earlier .NET Framework versions. Beachten Sie, dass die .NET Framework 2.0-Versionsnummer (v2.0.50727) verwendet wird, um .NET Framework 3.5 in der Anwendungskonfigurationsdatei anzugeben.Note that the .NET Framework 2.0 version number (v2.0.50727) is used to specify the .NET Framework 3.5 in the application configuration file.

App.config-DateieinstellungApp.config file setting Auf Computer mit installierter Version 3.5On computer with version 3.5 installed Auf Computer mit installierten Versionen 3.5 und 4 oder 4.5On computer with versions 3.5 and 4 or 4.5 installed Auf Computer mit installierter Version 4 oder 4.5On computer with version 4 or 4.5 installed
KeineNone Wird unter 3.5 ausgeführtRuns on 3.5 Wird unter 3.5 ausgeführtRuns on 3.5 Zeigt eine Fehlermeldung an, in der der Benutzer aufgefordert wird, die richtige Version zu installieren.Displays error message that prompts user to install the correct version
<supportedRuntime version="v2.0.50727"/> Wird unter 3.5 ausgeführtRuns on 3.5 Wird unter 3.5 ausgeführtRuns on 3.5 Zeigt eine Fehlermeldung an, in der der Benutzer aufgefordert wird, die richtige Version zu installieren.Displays error message that prompts user to install the correct version
<supportedRuntime version="v2.0.50727"/>
<supportedRuntime version="v4.0"/>
Wird unter 3.5 ausgeführtRuns on 3.5 Wird unter 3.5 ausgeführtRuns on 3.5 Wird unter 4 oder 4.5 ausgeführtRuns on 4 or 4.5
<supportedRuntime version="v4.0"/>
<supportedRuntime version="v2.0.50727"/>
Wird unter 3.5 ausgeführtRuns on 3.5 Wird unter 4 oder 4.5 ausgeführtRuns on 4 or 4.5 Wird unter 4 oder 4.5 ausgeführtRuns on 4 or 4.5
<supportedRuntime version="v4.0"/> Zeigt eine Fehlermeldung an, in der der Benutzer aufgefordert wird, die richtige Version zu installieren.Displays error message that prompts user to install the correct version Wird unter 4 oder 4.5 ausgeführtRuns on 4 or 4.5 Wird unter 4 oder 4.5 ausgeführtRuns on 4 or 4.5

* Weitere Informationen zu dieser Fehlermeldung und Möglichkeiten zu ihrer Vermeidung finden Sie unter .NET Framework-Initialisierungsfehler: Verwalten der Benutzerfreundlichkeit.* For more information about this error message and ways to avoid it, see .NET Framework Initialization Errors: Managing the User Experience.

Siehe auchSee Also

Migrieren von .NET Framework 1.1Migrating from the .NET Framework 1.1
MigrationshandbuchMigration Guide