Informationen zu parallelen Assemblys

Eine parallele Windows-Assembly wird durch Manifeste beschrieben. Eine parallele Assembly enthält eine Sammlung von Ressourcen – eine Gruppe von DLLs, Windows-Klassen, COM-Servern, Typbibliotheken oder Schnittstellen –, die immer zusammen für Anwendungen bereitgestellt werden. Diese werden im Assemblymanifest beschrieben.

In der Regel ist eine parallele Assembly eine einzelne DLL. Beispielsweise ist die Microsoft COMCTL32-Assembly eine einzelne DLL mit einem Manifest, während die Microsoft Visual C++ Laufzeitbibliotheksassembly des Entwicklungssystems mehrere Dateien enthält. Manifeste enthalten Metadaten , die parallele Assemblys und parallele Assemblyabhängigkeiten beschreiben.

Parallele Assemblys werden vom Betriebssystem als grundlegende Einheiten für Benennung, Bindung, Versionsverwaltung, Bereitstellung und Konfiguration verwendet. Jede parallele Assembly hat eine eindeutige Identität. Eines der Attribute der Assemblyidentität ist ihre Version. Weitere Informationen finden Sie unter Assemblyversionen.

Ab Windows XP können mehrere Versionen paralleler Assemblys von Gleichzeitig ausgeführten Anwendungen verwendet werden. Manifeste und die Assemblyversionsnummer werden vom Ladeprogramm verwendet, um die richtige Bindung von Assemblyversionen an Anwendungen zu bestimmen. Parallele Assemblys und Manifeste funktionieren mit Anwendungen und dem parallelen Manager, wie in der folgenden Abbildung dargestellt.

Darstellung einer typischen parallelen Assembly

Im vorherigen Beispiel befinden sich sowohl Comctl32.DLL Version 6.0 als auch Comctl32.DLL Version 5.0 im parallelen Assemblycache und stehen Anwendungen zur Verfügung. Wenn eine Anwendung zum Laden der DLL aufruft, bestimmt der parallele Manager, ob die Anwendung eine in einem Manifest beschriebene Versionsabhängigkeit aufweist. Wenn kein relevantes Manifest vorhanden ist, lädt das System die Standardversion der Assembly. Für Windows XP ist Version 5.0 von Comctl32.DLL der Systemstandard. Wenn der parallele Manager eine Abhängigkeit von Version 6.0 feststellt, die in einem Manifest angegeben ist, wird diese Version zur Ausführung mit der Anwendung geladen.

Mehrere wichtige Systemassemblys werden von Microsoft als parallele Assemblys zur Verfügung gestellt. Weitere Informationen finden Sie unter Unterstützte parallele Microsoft-Assemblys. Anwendungsentwickler können auch ihre eigenen parallelen Assemblys erstellen. Weitere Informationen finden Sie unter Richtlinien zum Erstellen von parallelen Assemblys. In vielen Fällen ist es möglich, vorhandene Anwendungen so zu aktualisieren, dass sie parallele Assemblys verwenden, ohne den Anwendungscode ändern zu müssen.

Entwickler werden empfohlen, parallele Assemblys zum Erstellen isolierter Anwendungen zu verwenden und vorhandene Anwendungen aus den folgenden Gründen in isolierte Anwendungen zu aktualisieren:

  • Parallele Assemblys verringern die Möglichkeit von DLL-Versionskonflikten.
  • Durch die parallele Assemblyfreigabe können mehrere Versionen von COM- oder Windows-Assemblys gleichzeitig ausgeführt werden.
  • Anwendungen und Administratoren können die Assemblykonfiguration nach der Bereitstellung entweder global oder anwendungsbezogen aktualisieren. Beispielsweise kann eine Anwendung aktualisiert werden, um eine parallele Assembly zu verwenden, die ein Update enthält, ohne die Anwendung neu installieren zu müssen.