Verfügbarmachen von .NET Framework-Komponenten in COM

Das Schreiben eines .NET-Typs stellt für einen Entwickler eine andere Aktivität dar als das Verarbeiten dieses Typs aus nicht verwaltetem Code. In diesem Abschnitt werden einige Tipps zum Schreiben von verwaltetem Code gegeben, der mit COM-Clients zusammenwirkt:

  • Qualifizieren von .NET-Typen für die Interoperation.

    Alle verwalteten Typen, Methoden, Eigenschaften, Felder und Ereignisse, die für COM verfügbar gemacht werden sollen, müssen öffentlich sein. Typen müssen über einen öffentlichen Standardkonstruktor verfügen, da dies der einzige Konstruktor ist, der über COM aufgerufen werden kann.

  • Anwenden von Interop-Attributen.

    Benutzerdefinierte Attribute in verwaltetem Code können die Interoperabilität einer Komponente verbessern.

  • Verpacken einer Assembly für COM.

    COM-Entwickler benötigen gegebenenfalls eine Zusammenfassung der Schritte zum Referenzieren und Bereitstellen von Assemblys.

Darüber hinaus werden in diesem Abschnitt die Aufgaben benannt, die in Zusammenhang mit der Beanspruchung eines verwalteten Typs durch einen COM-Client stehen.

So verarbeiten Sie einen verwalteten Typ von COM

  1. Registrieren Sie Assemblys mit COM.

    Typen in einer Assembly (und Typbibliotheken) müssen zum Zeitpunkt des Entwurfs registriert werden. Wenn die Assembly nicht von einem Installer registriert wird, müssen COM-Entwickler angewiesen werden, Regasm.exe ausführen.

  2. Verweisen Sie auf .NET-Typen in COM.

    Zum Verweisen auf die Typen in einer Assembly können COM-Entwickler die bekannten Techniken und Tools verwenden.

  3. Rufen Sie ein .NET-Objekt auf.

    COM-Entwickler können Methoden für .NET-Objekte in gleicher Weise aufrufen wie Methoden für nicht verwaltete Typen. Die CoCreateInstance-COM-API z. B. aktiviert .NET-Objekte.

  4. Geben Sie eine Anwendung für COM-Zugriff weiter.

    Eine Assembly mit starkem Namen kann im globalen Assemblycache installiert werden. Sie bedarf einer Signatur vom Herausgeber. Assemblys ohne starke Namen müssen im Anwendungsverzeichnis des Clients installiert werden.

Siehe auch

Konzepte

COM-Interop-Beispiel: COM-Client und .NET-Server

Weitere Ressourcen

Interoperation mit nicht verwaltetem Code