Entwickler-Ecke
Programmierwerkzeuge - Delphi DLL in VB6 Projekt einbinden
stiftmaster - Do 23.06.05 23:53
Titel: Delphi DLL in VB6 Projekt einbinden
Hallo Leute,
ich habe mir die Tage eine kleine DLL in Delphi 7 programmiert und binde die nun auch in meiner Applikation ein - das läuft soweit ganz gut. Ein Freund von mir programmiert zur Zeit etwas in VB6. Da er einen Teil meiner DLL gut gebrauchen könnte, wollte ich fragen, ob ich die ihm einfach schicken kann und er die dann ohne Probleme einbinden kann (wenn ich ihm die Deklarationen nenne)? Oder kann eine DLL nur von dem Programm verwendet werden, in dem es auch programmiert ist?
Danke für eure Antwort
Stefan
Moderiert von
Tino: Titel geändert.Moderiert von
Tino: Topic aus Sonstiges verschoben am Fr 24.06.2005 um 09:35
retnyg - Fr 24.06.05 00:17
klar, die dll kannst du in nahezu jeder programmiersprache verwenden.
stiftmaster - Fr 24.06.05 09:03
na, das freut mich ja zu hören - dann ist ja mein Teil der Programmierung schon so gut wie abgeschlossen :-)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| library Project1;
function TestFunction(Value: PChar): WideString; stdcall; var begin Result := Value; end;
exports TestFunction;
begin
end. |
es weiß nicht rein zufällig jemand, wie man diese Funktion dann in VB6 aufrufen kann - mein Kollege hat nämlich leider noch keiner Erfahrung mit der DLL-Programmierung :-(
Stefan
Moderiert von
Christian S.: Such- durch Delphi-Tags ersetzt *g*
retnyg - Fr 24.06.05 09:14
Quelltext
1:
| Declare Function Funktionsname Lib "DLL_DATEINAME" ( ByVal Parameter As Typ) As Typ |
dann halt noch im code mit funktionsname aufrufen.
nelle - Fr 24.06.05 09:51
Genau: Für Dein Beispiel wäre Folgendes in einer VB6 - Moduldatei zu schreiben:
Quelltext
1:
| Declare Function TestFunction Lib "Project1.DLL" (ByVal Value As String) As String |
Nelle
BenBE - Fr 24.06.05 09:56
In DLLs solltest Du generell auf die Nutzung von AnsiString und WideString verzichten, da diese Typen von VB nicht vollständig unterstützt werden. Nimm dazu PChar, den versteht auch VB ...
stiftmaster - Fr 24.06.05 19:13
Hallo Leute,
ich habe nun in VB6 folgendes kurzes Programm zum Testen benutzt. wenn ich dann das Programm starte, stürzt ganz VB ab. Ich weiß jetzt leider nicht, ob es an meiner DLL liegt, oder ob die einfach falsch in VB6 eingebunden wird.
Quelltext
1: 2: 3: 4:
| Private Declare Function EncodeString Lib "D:\Project1.dll" (ByVal Value, Key As String) As String Private Sub Command1_Click() Text1.Text = EncodeString("test", "1") End Sub |
Vielen Dank für eure Mühe
Stefan
Sprint - Sa 25.06.05 01:49
| Zitat: |
| Function EncodeString Lib "D:\Project1.dll" (ByVal Value, Key As String) As String |
Delphi-Quelltext
1:
| function EncodeString(Value, Key: PChar): WideString; stdcall; |
Quelltext
1:
| Private Declare Function EncodeString Lib "project1.dll" (ByVal Value As String, ByVal Key As String) As String |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!