Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   VB-Funktionen nach Delphi konvertieren (https://www.delphipraxis.net/145207-vbulletin-funktionen-nach-delphi-konvertieren.html)

hilfmir 26. Dez 2009 10:08


VB-Funktionen nach Delphi konvertieren
 
Ich möchte eine fremde .dll in mein Delphi-Programm einbinden.

Die Hilfe zur dll enthält Beispiele, wie sich die Funktionen mit VB aufrufen lassen.
Z.B.

Code:
Private Declare Function openComDevice Lib “sucoma32.dll”_
   ( ByVal xpComDevice As String,_
     ByRef xwPortID As Long) As Integer
wie hat ein solcher Funktionsaufruf in Delphi auszusehen?
mein bisheriger Versuch funktioniert nicht:

Delphi-Quellcode:
procedure TForm1.verbindenButtonClick(Sender: TObject);
var
   ergebnis:integer;
   portid: integer;
begin
  {$I-}
  ergebnis:=opencomdevice(pchar('COM1:9600'),portid);
  {$I+}
  if ergebnis<>0 then edit1.text:='Fehler'
                 else edit1.text:='verbunden';
end;
leider gibts da immer eine Fehlermeldung.


und wie hat die entsprechende Deklaration in Delphi auszusehen?
ist das so korrekt?

Function openComDevice(xpComDevice:String; xwPortID:integer ):Integer; stdcall; external 'sucoma32.dll';

Mit VB hatte ich noch nie was zu tun.

[edit=Matze][code]- und [delphi]-Tags eingefügt. Zukünftig bitte selbst daran denken. MfG, Matze[/edit]

omata 26. Dez 2009 12:53

Re: VB-Funktionen nach Delphi konvertieren
 
Vielleicht so...
Delphi-Quellcode:
function openComDevice(xpComDevice:PChar; var xwPortID:LongInt):Integer; stdcall; external 'sucoma32.dll';

Astat 26. Dez 2009 13:38

Re: VB-Funktionen nach Delphi konvertieren
 
Hallo "hilfmir"

Versuch dies.

Delphi-Quellcode:
Function openComDevice(xpComDevice: PChar; var xwPortID: DWORD): Integer;
  stdcall; external 'sucoma32.dll';
lg. Astat

hilfmir 26. Dez 2009 14:26

Re: VB-Funktionen nach Delphi konvertieren
 
Vielen Dank euch beiden.

Beide Varianten funktionieren.

EWeiss 26. Dez 2009 15:40

Re: VB-Funktionen nach Delphi konvertieren
 
Zitat:

Zitat von hilfmir
Vielen Dank euch beiden.

Beide Varianten funktionieren.

Würde die Datentypen nochmal prüfen :)
Long 4 Bytes Ganze Zahlen von -2.147.483.648 bis +2.147.483.647

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz