![]() |
Delphi Dll in VB6 nutzen
Hallo,
ich habe ich Delphi6 eine Dll erstellt. Dieses ist ein Automationsobjekt. In der Dll steckt zusätzlich (bzw. als Hauptbestandteil) eine Formklasse (TForm). Diese Dll möchte ich nun in VB6 verwenden. D.h. wenn ich in VB auf einen Button drücke soll die Dll initialisiert werden. Danach soll über eine Methode die auch public ist die Formklasse aufgerufen und angezeigt werden. Kann mir irgendjemand helfen wie ich das bewerkstellige? Ich scheitere bereits an der Initialisierung der Dll. Set MyVariable = CreateObject("DllName.Klasse") An diesem Aufruf scheitere ich bereits mit der Fehlermeldung: "Laufzeitfehler 429: Objekterstellung durch ActiveX-Komponente nicht möglich." Vielen Dank für eure Mühen Martin |
Re: Delphi Dll in VB6 nutzen
Zitat:
Dann könnte ich vielleicht helfen. Garantiert kannst du keine Delphi DLL über CreateObject initialisieren. Das kannst getrost vergessen. Delphi DLL's können nicht als AktiveX angesprochen werden. Sind nicht kompatibel. Gruß |
Re: Delphi Dll in VB6 nutzen
Na egal..
Hier mal das kleinste Beispiel was ich auf die schnelle zurecht geflickt habe. Delphi
Delphi-Quellcode:
library DWithVB;
uses SysUtils, Classes, Dialogs; {$R *.RES} FUNCTION DllTest():Integer;StdCall; var Hobby: string; begin Hobby := InputBox('Hallo VBler du befindest dich nun in Delphi','Was ist dein Hobby?',''); If Length(Hobby) = 0 then Begin Result := 0; Exit; End Else Begin Result := 1; ShowMessage('Hallo dein Hobby ist ' + Hobby); End; end; EXPORTS DllTest; begin end. Visual Basik
Code:
Private Declare Function DllTest Lib "DWithVB.dll" () As Integer
Private Sub Command1_Click() Dim TResult As Long TResult = DllTest End Sub Private Sub Command2_Click() Unload Form1 End End Sub |
Re: Delphi Dll in VB6 nutzen
Hast du die DLL auf dem Zielrechner mit RegSvr32.exe registriert??
Wenn der Zielrechner dein Entwicklungsrechner ist, dann reicht in der Delphi IDE: Start -> ActiveX Server eintragen |
Re: Delphi Dll in VB6 nutzen
Zitat:
Mußt mir mal zeigen wie das geht ;) gruß |
Re: Delphi Dll in VB6 nutzen
erst mal Danke für die vielen Antworten :)
ich habs nun hin bekommen. Ganz normal mit CreateObject... keine Ahnung wieso das nicht gleich geklappt hat. Set MyDll = CreateObject("AVDllCom.StartKlasse") und natürlich unter Projekt-Verweise mit eingebunden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz