Freigeben über


Weitergeben einer Interop-Anwendung

Eine Interop-Anwendung umfasst in der Regel eine .NET-Clientassembly, eine oder mehrere Interop-Assemblies, die verschiedene COM-Typbibliotheken darstellen, sowie eine oder mehrere registrierte COM-Komponenten. Mit .NET Framework SDK stehen Tools zur Verfügung, mit denen Sie eine Typbibliothek importieren und in eine Interop-Assembly konvertieren können. Die Interop-Assembly muss zusammen mit den anderen Assemblies ausgeliefert werden, aus denen sich die Anwendung zusammensetzt.

Assemblies können starke Namen haben. Eine Assembly mit starkem Namen enthält den öffentlichen Schlüssel des Publishers und verfügt damit über eine eindeutige Identität. Assemblies, die mit dem Type Library Importer-Tool (Tlbimp.exe) erstellt wurden, können vom Publisher mit Hilfe der /keyfile-Option signiert werden. Signierte Assemblies können im globalen Assemblycache installiert werden. Unsignierte Assemblies müssen auf dem Computer des Benutzers als private Assemblies installiert werden.

Private Assemblies

Um eine Assembly zur privaten Nutzung zu installieren, muss die EXE-Datei der Anwendung zusammen mit der Interop-Assembly, die die importierten COM-Typen enthält, in derselben Verzeichnisstruktur installiert werden. Die folgende Abbildung zeigt eine unsignierte Interop-Assembly zur privaten Nutzung durch Client1.exe und Client2.exe, die sich in separaten Anwendungsverzeichnissen befinden. Die Interop-Assembly in diesem Beispiel heißt LOANLib.dll und wird zweimal installiert.

Verzeichnisstruktur und Registrierungseinträge für eine private Weitergabe

Alle mit der Anwendung verknüpften COM-Komponenten müssen in der Windows-Registrierung installiert werden. Wenn Client1.exe und Client2.exe (siehe Abbildung) auf verschiedenen Computern installiert werden, müssen die COM-Komponenten auf beiden Computern registriert werden.

Freigegebene Assemblies

Freigegebene Assemblies, die von mehreren Anwendungen gemeinsam verwendet werden, müssen in einem zentralen Repository installiert werden, dem so genannten globalen Assemblycache. Mehrere .NET-Clients können zeitgleich auf eine im globalen Assemblycache signierte und installierte Kopie der Interop-Assembly zugreifen.

Siehe auch

COM-Komponenten für .NET Framework verfügbar machen | Importieren einer Typbibliothek als Assembly | Verwenden von COM-Typen in verwaltetem Code | Kompilieren eines Interop-Projekts