Autor Beitrag
BattleFrog
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 53

WIN 2000
Delphi 7 Ent.
BeitragVerfasst: Sa 19.10.02 19:37 
Heyho.

Ich habe ein VB Programm, das aus einer DLL eine Klasse lädt.
Dieses VB Prog ist fertig als exe, darum geht es in dem problem nicht also keine angst :)

Mein Problem ist, das ich nicht weiss wie man eine Klasse in einer DLL so exportiert, das ein VB Prog diese nutzen kann.

normale funktionen werden ja mit der exports-Klausel exportiert, so dass sie von anderen Progs benutzt werden können.

Aber wie geht es mit ner Klasse.

Ich habe schon wege gefunden, das aus ner delphi dll zu ner delphi exe die klasse zu ex- und importieren.
Aber das brauche ich ja nich.

Ich hab die Hoffnung zwar schon aufgegeben, aber irgenwo muss doch jemand sein, der sowas weiss...

bis denne...
BF
Popov
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 19.10.02 22:12 
Ob das hier das richtige Forum ist? Wenn du hier eine Antwort kriegst, dann eher zufällig. Wenn es um VB geht , dann solltest du besser auch VB Foren besuchen. Hier zwei gute VB Foren:

www.activevb-archiv.de

www.spotlight.de

Zu Seite springen und Forum anklicken, bzw. VisualBsic Forum.

Eine Frage? Kann VB auch mit Klassen umgehen?
BattleFrog Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 53

WIN 2000
Delphi 7 Ent.
BeitragVerfasst: Sa 19.10.02 22:19 
hui, da hab ich mich wohl etwas falsch ausgedrückt... :)

Ich will hier garnix über VB wissen, sondern es geht um die DLL die in Delphi geschrieben werden soll...

In dieser DLL wird eine Klasse definiert, die funktionen enthält.

Ich will einfach nur nen Weg wissen, wie man diese Klasse exportieren kann, so das sie auch ein VB Prog (oder einc++ prog) versteht...


und wech...
BF
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: So 20.10.02 14:05 
BattleFrog hat folgendes geschrieben:
In dieser DLL wird eine Klasse definiert, die funktionen enthält.

Klassen können von VB gar nicht verarbeitet werden. Du kannst höchstens die Objekte flatten. D.h. für den Konstruktor schreibst du eine Funktion, die ein Handle (nichts anderes als die Konvertierung einer Objektvariable in Integer) zurückliefert.
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
function MyObject_Create(Params: Integer): THandle;
begin
  Result := THandle(TMyObject.Create(Params));
end;
procedure MyObject_Destroy(var obj: THandle);
begin
  TMyObject(obj).Free;
  obj := nil;
end;
...


Für ein C++ Programm geht es ebenfalls nur mit geflatteten Klassen.


Oder: Redest du von ActiveX-Komponenten?

_________________
Ist Zeit wirklich Geld?
BattleFrog Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 53

WIN 2000
Delphi 7 Ent.
BeitragVerfasst: So 20.10.02 15:11 
Das VB Prog erwartet in der ActiveX-DLL ein Klassenmodul mit dem Namen "move".

(Ich habe jetzt Klasse mit KLassenmodul gleichgesetzt ...)

Tut mir leid, ich kann es nicht besser erklären, weil ichs ja selbst nich kapiere :)