vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
VB 2010 Express: ActiveX-DLL für VB6 erstellen 
Autor: Manfred X
Datum: 14.06.11 08:46

Hallo!

Das Erstellen einer DLL in VB-Express, deren Klassen
in VB6 nutzbar sind, ist machbar.

1. Erstelle ein neues Projekt vom Typ Klassenbibliothek.
(im Beispiel: ComLib)

2. Gehe in Projekt-Eigenschaften -> Anwendung -> AssemblyInformationen
und setze den Haken bei "Assembly Com sichtbar machen".

3. Füge den Code Deiner Klassen und Methoden ein (ein parameterloser
Klassenkonstruktor ist erforderlich).
Public Class ComClass1
 
    Public Sub New()
        MyBase.New()
    End Sub
 
    Public Function Add(ByVal arg1 As Double, ByVal arg2 As Double) As Double
        Return arg1 + arg2
    End Function
 
End Class
4. Gehe in die Datei AssemblyInfo des Biblio-Projekts und
füge ein Assembly-Attribut hinzu (ClassInterface).
Diese Datei sollte dann etwa so aussehen:
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
 
<Assembly: AssemblyTitle("COMLIB")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("")> 
<Assembly: AssemblyProduct("COMLIB")> 
<Assembly: AssemblyCopyright("Copyright ©  2011")> 
<Assembly: AssemblyTrademark("")> 
 
<Assembly: ComVisible(True)> 
<Assembly: ClassInterface(classinterfacetype.AutoDual)> 
 
<Assembly: Guid("f037ec95-7d28-4c9d-9e42-4653c07937fc")> 
 
<Assembly: AssemblyVersion("1.0.0.0")> 
<Assembly: AssemblyFileVersion("1.0.0.0")>
5. Führe das Tool "RegAsm.Exe" aus, um für die Bibliothek eine
tlb-Datei zu erstellen (Export der Klassen für Com-Interop).

regasm <Bibliothekname> /tlb /codebase


Jetzt kann in VB6 der Verweis gesetzt werden.
(Die Bibliothek sollte unter ihrem Projektnamen registriert sein
und deshalb in der Verweisliste des VB6-Projekts auftauchen.)

Verwendung der Klasse in VB6:
Dim c As COMLIB.ComClass1
Set c = New COMLIB.ComClass1
 
Dim dbl As Double
dbl = c.Add(12, 15)
Zur Verwendung in VB-Script kann ich nichts sagen.
Ausprobieren.

MfG
Manfred

Beitrag wurde zuletzt am 14.06.11 um 09:01:16 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Einstieg in VB.NET: ActiveX-DLL erstellen4.198tschroeder10.06.11 16:20
Re: Einstieg in VB.NET: ActiveX-DLL erstellen3.939Manfred X10.06.11 19:11
Re: Einstieg in VB.NET: ActiveX-DLL erstellen3.345tschroeder13.06.11 19:45
VB 2010 Express: ActiveX-DLL für VB6 erstellen5.193Manfred X14.06.11 08:46
Re: VB 2010 Express: ActiveX-DLL für VB6 erstellen3.483ModeratorFZelle14.06.11 13:29
Re: VB 2010 Express: ActiveX-DLL für VB6 erstellen3.436Manfred X14.06.11 14:40
Re: VB 2010 Express: ActiveX-DLL für VB6 erstellen3.144Micke14.06.11 18:17

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel