Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
DLL/COM-Umleitung ist eine Anwendungsisolationsstrategie, die von Unternehmensadministratoren unter Windows XP eingesetzt wird.
**Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP mit SP2: ** Die Verwendung von DLL-/COM-Umleitungsstrategien wird nicht empfohlen, da isolierte Anwendungen, die Manifeste und parallele Assemblys verwenden, einfacher zu aktualisieren und zu bedienen sind. Das Vorhandensein einer lokalen Datei wird ignoriert, wenn ein Manifest vorhanden ist. Die DLL/COM-Umleitungsstrategie mit lokalen Dateien funktioniert, wenn die Anwendung nicht über ein Manifest verfügt.
Dll/COM-Umleitung bindet eine Anwendung an eine lokale Version einer Komponente. Die Dateien der lokalen Komponente können getrennt von der Systemversion der Komponente an einem Speicherort aufbewahrt werden, der für die Anwendung privat ist. Die Version der Komponente des Systems ist global registriert und für alle anderen Anwendungen verfügbar, die an die Komponente gebunden sind. Die lokale Version der Komponente ist für die ausschließliche Verwendung der Anwendung reserviert. Bei Bedarf können die von der Anwendung verwendeten Komponentendateien gleichzeitig mit den Komponentendateien des Systems in den Arbeitsspeicher geladen werden.
DLL/COM-Umleitung wird aktiviert, indem eine spezielle Datei zusammen mit einer Kopie der lokalen Komponentendatei in dasselbe Verzeichnis wie die ausführbare Datei der Anwendung installiert wird. Die spezielle Datei ist eine leere Datei, die nach dem Dateinamen der ausführbaren Anwendung benannt und mit .local angefügt wird. Zum Aktivieren der DLL/COM-Umleitung für eine Anwendung mit dem Namen Myapp muss beispielsweise die lokale Version der Komponente und eine leere Datei mit dem Namen Myapp.exe.local in den Ordner kopiert werden, der Myapp.exeenthält. Dadurch wird die Anwendung an die lokale Version der Komponente und nicht an die global freigegebene Version der Komponente gebunden.
Wenn eine Anwendung eine Komponentendatei lädt, z. B. eine DLL- oder OCX-Datei, sucht Windows zuerst im Ordner, in dem die LOKALE und ausführbare Datei der Anwendung installiert ist. Wenn sie gefunden wird, verwendet die Anwendung diese Komponentendatei unabhängig von einem Verzeichnissuchpfad, der in der Anwendung oder in der Registrierung definiert ist. Wenn sie nicht gefunden wird, wird die Komponentendatei im definierten Suchpfad verwendet.
Das Installationsprogramm muss folgendes ausführen, um die Anwendung mit DLL/COM-Umleitung zu installieren:
- Eine leere LOKALE Datei muss in denselben Ordner kopiert werden wie die ausführbare Datei der Anwendung.
- Alle Komponenten, DLL- und OCX-Dateien, die von der Anwendung verwendet werden, müssen in denselben Ordner wie die ausführbare Datei der Anwendung kopiert werden.
- Isolierte COM-Komponenten müssen bei Windows registriert werden, damit unterschiedliche Versionen der Assembly nicht miteinander in Konflikt stehen, wenn sie gleichzeitig in den Arbeitsspeicher geladen werden. Der Registrierungsprozess erfordert, dass sich die Implementierung der Komponente zwischen Versionen ändern kann, bestimmte COM-Metadaten wie CLSID, ProgID, Typbibliothek und Threadingmodell nicht.
- Wenn die Anwendung mit dem Windows Installer installiert ist, kann das Anwendungsverzeichnis mithilfe der Tabelle LockPermissions gesichert werden. In der Regel erhält das System Lese-, Schreib- und Ausführungszugriff; Alle anderen Prozesse erhalten nur Ausführungs- und Lesezugriff.