Heim >Backend-Entwicklung >C++ >Wie erstelle ich eine COM-Interop-DLL aus einer C#-DLL für VB6?

Wie erstelle ich eine COM-Interop-DLL aus einer C#-DLL für VB6?

Linda Hamilton
Linda HamiltonOriginal
2024-12-29 21:19:12322Durchsuche

How to Create a COM Interop DLL from a C# DLL for VB6?

Erstellen einer COM-Interop-DLL aus einer C#-DLL

Frage: Wie kann ich eine C#-DLL in eine umwandeln? COM-Interop-DLL, die von einer VB6 verwendet werden kann Anwendung?

Antwort:

Das Erstellen einer COM-Interop-DLL in C# umfasst die folgenden Schritte:

Generieren der C#-DLL:

  1. Initialisieren Sie ein C#-Klassenprojekt mit Schnittstellen für Eigenschaften/Methoden und Ereignisse.
  2. Weisen Sie der Klasse und den Schnittstellen GUID-Attribute gemäß den Microsoft-Richtlinien zu.
  3. Aktivieren Sie die COM-Sichtbarkeit, indem Sie in den Projekteigenschaften „Assembly COM-sichtbar machen“ aktivieren.
  4. Setzen Sie das „Plattformziel“ in den Projekteigenschaften > auf x86. Erstellen.

Registrieren der DLL:

Auf der Entwicklungsmaschine:

  • Option 1: Aktivieren Sie „Für COM Interop registrieren“ in den Projekteigenschaften > Erstellen und erstellen Sie das Projekt.
  • Option 2: Verwenden Sie RegAsm, um die DLL manuell zu registrieren:

    • Navigieren Sie zum gewünschten Verzeichnis.
    • Öffnen Sie einen Befehl Geben Sie Administratorrechte ein und führen Sie Folgendes aus:
      RegAsm.exe -tlb -codebase mydll.dll
      Ersetzen „mydll.dll“ mit dem tatsächlichen DLL-Namen.

Installation mit InstallShield:

  1. Erstellen Sie eine Komponente in InstallShield und verknüpfen Sie es mit einer Funktion.
  2. Aktivieren Sie „.NET COM Interop“ für Komponente.
  3. Fügen Sie die DLL-Datei zum Abschnitt „Dateien“ der Komponente hinzu, ohne sich selbst zu registrieren.
  4. Fügen Sie die TLB-Datei hinzu, um die Selbstregistrierung zu aktivieren.
  5. Stellen Sie sicher, dass der Ziel-PC über die verfügt kompatible .Net Framework-Version installiert.

Das obige ist der detaillierte Inhalt vonWie erstelle ich eine COM-Interop-DLL aus einer C#-DLL für VB6?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn