Freigeben über


Konzept der isolierten Anwendungen und der parallelen Assemblys

Eine Anwendung wird als isolierte Anwendung angesehen, wenn all ihre Komponenten parallele Assemblys sind.Eine parallele Assembly ist eine Auflistung der Ressourcen-eingruppe DLL, Fensterklassen, COM-Servern, Typbibliotheken oder, Schnittstelle-dass zusammen bereitgestellt werden und bereitgestellt, die einer Anwendung zur Laufzeit verwendet.Im Normalfall besteht eine parallele Assembly aus einer oder mehreren DLLs.

Freigegeben oder privat

Eine parallele Assembly kann entweder freigegeben oder privat sein.Freigegebene parallele Assemblys kann von mehreren Anwendungen verwendet werden, die, in ihren Manifesten, eine Abhängigkeit von der Assembly angeben.Mehrere Versionen einer parallelen Assemblys können von verschiedenen Anwendungen gemeinsam genutzt werden, die gleichzeitig ausgeführt werden.private Assembly ist eine Assembly, die zusammen mit einer Anwendung für die exklusive Verwendung dieser Anwendung bereitgestellt wird.Private Assemblys werden im Ordner installiert, der die ausführbare Datei oder einen Anwendung der Unterordner enthält.

Manifeste und Suchreihenfolge

Isolierte Anwendungen werden und parallele Assemblys durch Manifeste beschrieben.Ein Manifest ist ein XML-Dokument, das eine externe Datei vorliegt oder in einer Anwendung oder in einer Assembly als Ressource eingebettet werden kann.Die Manifestdatei einer isolierten Anwendung wird zur Verwaltung der Namen und Versionen freigegebener paralleler Assemblys verwendet, an die die Anwendung zu Laufzeit gebunden werden muss.Das Manifest einer parallelen Assembly gibt den Namen, die Versionen, die Ressourcen sowie abhängige Assemblys der parallelen Assembly an.Für Manifest einer freigegebenen parallelen Assembly wird im Ordner %WINDIR%\WinSxS\Manifests\ installiert.Bei einer privaten Assembly wird empfohlen, das Manifest in der DLL als Ressource einschließen, die eine ID gleich 1. verfügt.Sie können der privaten Assembly denselben Namen wie der des DLL auch geben.Weitere Informationen finden Sie unter Private Assemblys.

Zur Ausführungszeit wird Windows Assemblyinformationen aus dem Anwendungsmanifest, um die entsprechende parallele Assembly zu suchen und zu laden.Wenn eine isolierte Anwendung eine Assemblyabhängigkeit angibt, sucht das Betriebssystem zuerst für die Assembly unter den freigegebenen Assemblys im systemeigenen Assemblycache im Ordner %WINDIR%\WinSxS\.Wenn die erforderliche Assembly nicht gefunden wird, sucht das Betriebssystem anschließend eine private Assembly in einem Ordner der Verzeichnisstruktur der Anwendung.Weitere Informationen finden Sie unter Assemblysuchsequenz.

Ändern von Abhängigkeiten

Sie können parallele Assembly ändern, die Abhängigkeiten nach einer Anwendung bereitgestellt wurde, indem Sie Herausgeber-Konfigurationsdateien und Anwendungskonfigurationsdateien geändert hat.Eine Herausgeberkonfigurationsdatei, auch als eine Herausgeberrichtliniendatei, ist eine XML-Datei, die Anwendungen und Assemblys global von der Verwendung einer Version einer parallelen Assembly mit einer anderen Version derselben Assembly umleitet.Beispielsweise können Sie eine Abhängigkeit ändern, wenn eines Sicherheitsupdates für eine bestimmte parallele eine parallele Assembly bereitgestellt wird und Sie alle Anwendungen umleiten möchten, die feste Version verwenden.Eine Anwendungskonfigurationsdatei ist eine XML-Datei, die eine bestimmte Anwendung von der Verwendung einer Version einer parallelen Assembly mit einer anderen Version derselben Assembly umleitet.Sie können eine Anwendungskonfigurationsdatei verwenden, um eine bestimmte Anwendung umleiten, eine Version einer parallelen Assembly verwenden, die zu der unterscheidet, die in der Herausgeberkonfigurationsdatei angegebene.Weitere Informationen finden Sie unter Konfiguration.

Visual C++-Bibliotheken

In Visual Studio 2005 und Visual Studio 2008 sind verteilbare Bibliotheken wie ATL, MFC, CRT, Standard-C++, OpenMP und MSDIA als freigegebene parallele Assemblys im systemeigenen Assemblycache bereitgestellt.In Visual Studio 2010 und Visual Studio 2012 verwenden die verteilbaren Bibliotheken zentrale Bereitstellung.Standardmäßig werden alle Anwendungen, die erstellt werden, indem Sie Visual C++, mit dem Manifest erstellt, die in die endgültige Binärdatei eingebettet werden, und dem Manifest beschreibt die Abhängigkeiten der Binärdatei auf den Visual C++-Bibliotheken.Um Manifestgenerierung für Visual C++-Anwendungen zu verstehen, finden Sie unter Manifestgenerierung für C/C++-Programme.Ein Manifest ist nicht für Anwendungen erforderlich, die statisch mit den Bibliotheken verknüpft werden, die sie verwenden oder die lokale Bereitstellung verwenden.Weitere Informationen zur Bereitstellung, finden Sie unter Bereitstellung in Visual C++ 2010.

Siehe auch

Weitere Ressourcen

Erstellen von isolierten Anwendungen und parallelen Assemblys (C/C++)