Freigeben über


Konfigurieren einer COM-Anwendung für die parallele Ausführung

Mit einer Anwendungskonfigurationsdatei kann eine COM-Anwendung an eine bestimmte verwaltete Komponente gebunden werden. Darüber hinaus kann angegeben werden, welche Version der Common Language Runtime für das Ausführen der Komponente verwendet wird. Entwickler von COM-Anwendungen können eine .NET Framework-Anwendungskonfigurationsdatei erstellen und diese mit ihren Anwendungen bereitstellen.

Standardladeverhalten

Bei einer nicht verwalteten Anwendung ohne Anwendungskonfigurationsdatei wird die zum Laden der Komponente verwendete Version der Runtime wie folgt bestimmt:

  • Wenn die Komponente mit .NET Framework, Version 4 oder höher erstellt wurde, wird sie mit der Runtime geladen, die zum Erstellen der Komponente verwendet wurde.

  • Wenn die Komponente mit einer früheren Version des .NET Framework erstellt wurde, wird sie mit der neuesten Version der Runtime vor Version 4 geladen, die auf dem Computer installiert ist. Wenn eine Komponente z. B. mit .NET Framework, Version 1.1 erstellt wurde und drei .NET Framework-Versionen (.NET Framework 1.1, .NET Framework 3.5 SP1 und .NET Framework 4) auf dem Computer installiert sind, wird die Komponente mit .NET Framework 3.5 SP1 geladen. Dies war das Standardverhalten vor .NET Framework 4.

Dieses Ladeverhalten betrifft Komponenten, die im gleichen Prozess parallel geladen werden. Die Runtime für .NET Framework 4 kann prozessintern mit einer Runtime einer früheren Version des .NET Framework ausgeführt werden. Weitere Informationen finden Sie unter Prozessinterne parallele Ausführung.

Festlegen der Version der Common Language Runtime

Falls das Standardladeverhalten nicht den Anforderungen der COM-Anwendung entspricht, können Sie mit dem <supportedRuntime>-Element in einer Anwendungskonfigurationsdatei die Version der Common ‎Language Runtime angeben, die für die Anwendung erforderlich ist. Sie können z. B. die Common Language Runtime-Version 1.1.4322 angeben, um .NET Framework, Version 1.1, zu laden. Entsprechende Anweisungen finden Sie unter Ausrichten auf eine bestimmte .NET Framework-Version.

HinweisHinweis

COM-Anwendungen in einem erweiterbaren Host wie Microsoft Internet Explorer oder Microsoft Office können nicht steuern, welche Version der Common Language Runtime geladen wird.

Wenn Sie sowohl mit .NET Framework 4 als auch einer früheren Version des .NET Framework erstellte Komponenten haben, müssen Sie beide Versionen als unterstützte Runtimes aufführen, da die ältere Komponente beim Standardladeverhalten nicht mit .NET Framework 4 geladen wird. Wenn die frühere Komponente mit .NET Framework 4 geladen werden soll, legen Sie das useLegacyV2RuntimeActivationPolicy-Attribut im <startup>-Element der Konfigurationsdatei auf true fest. Dadurch wird das Standardladeverhalten vor .NET Framework 4 wiederhergestellt, bei dem die neueste unterstützte .NET Framework-Version verwendet wird.

Festlegen einer Assemblyversion

Wenn keine Anwendungskonfigurationsdatei vorhanden ist, lädt die Common Language Runtime die aktuellste in der Windows-Registrierung registrierte Version der Assembly, die den von COM zu aktivierenden Typ enthält. Mit dem <bindingRedirect>-Element in einer Anwendungskonfigurationsdatei können Sie festlegen, dass die Anwendung an eine frühere Assemblyversion gebunden wird. Entsprechende Anweisungen finden Sie unter Umleiten von Assemblyversionen.

Sie können mehrere Assemblyversionen umleiten, indem Sie mehrere <bindingRedirect>-Elemente in ein <dependentAssembly>-Element aufnehmen.

Siehe auch

Referenz

<startup>-Element

<supportedRuntime>-Element

<bindingRedirect>-Element

Konzepte

Laufzeitinitialisierung aus einer COM-Anwendung

Versionsabhängige Registrierungsschlüssel

Anwenden versionsabhängiger Attribute

COM-Komponenten und parallele Ausführung

Umleiten von Assemblyversionen

Weitere Ressourcen

Parallele Ausführung für COM-Interop