Freigeben über


Weitergeben von gemeinsam genutzten Komponenten

Die Weitergabe von gemeinsam genutzten Komponenten ist komplizierter als die Weitergabe in den vorherigen Beispielen. Komponenten können zwar problemlos von verwandten Anwendungen gemeinsam genutzt werden, indem sie in ein allgemeines Komponentenverzeichnis gestellt werden, in der Praxis werden Komponenten, die von mehreren Anwendungen im System gemeinsam genutzt werden, jedoch häufig im Systemassemblycache gespeichert.

Wie in den vorherigen Beispielen kann die überarbeitete Datei Client.exe von jeder beliebigen Workstation, auf der die Common Language Runtime installiert ist, direkt auf einem Dateiserver ausgeführt werden. Client.exe und Stringer.dll können ebenfalls auf einen lokalen Datenträger kopiert werden.

Es ist jedoch ein zusätzlicher Schritt erforderlich, um die gemeinsam nutzbare Assembly im Systemassemblycache zu installieren. Die Verwaltung des Systemassemblycache erfolgt im Normalfall automatisch, wenn MSI-Pakete (Microsoft Installer) installiert und deinstalliert werden. Mit dem Global Assembly Cache-Tool (Gacutil.exe) können Sie Assemblies auf dem Computer, auf dem das betreffende Client.exe-Programm ausgeführt wird, auch manuell installieren:

gacutil.exe /i Reverser.dll

Beachten Sie, dass dieses Tool nicht zu den verteilbaren .NET-Dateien gehört. Wenn also .NET Framework SDK nicht auf dem Clientcomputer installiert ist, muss dieses Tool zuerst manuell auf den Client kopiert werden.

Nach der Installation der Reverser-Assembly können Sie den Assemblycache untersuchen, indem Sie im Installationsverzeichnis von Windows in das Verzeichnis \Assembly wechseln und die Shellerweiterung des Assemblycache verwenden:

Das Bereinigen der Anwendung ist etwas aufwendiger als in den vorherigen Beispielen. Es sollten nicht nur die Dateien gelöscht werden, sondern es empfiehlt sich auch, die gemeinsam genutzte Komponentendatei aus dem Assemblycache zu entfernen. (Im Gegensatz zum Downloadcache wird der Assemblycache nicht automatisch gelöscht.) Am einfachsten geht dies, wenn Sie die Shellerweiterung des Cache verwenden, die entsprechenden Komponenten auswählen und sie löschen.

Entwickler und Administratoren, die diesen Prozess automatisieren möchten, werden jedoch die Befehlszeilenschnittstelle zum Assemblycache-Manager verwenden wollen:

gacutil /u reverser

Weitere Informationen zu diesem Ansatz sowie Informationen darüber, wie Sie mit dem Assembly Binding Log Viewer-Tool das Laden von Assemblies überprüfen finden Sie in Anhang B: Tools zum Verpacken und Weitergeben.

Siehe auch

(5) Komponentenversionen | Zusammenfassung: Verpacken und Weitergeben von Anwendungen | Anhang A: Weitere Informationen zum Verpacken und Weitergeben | Anhang B: Tools zum Verpacken und Weitergeben