C++ - Aufruf mit Parameterübergabe in Delphi

From: schnabel (schnabelmann_at_gmx.net)
Date: 09/23/04


Date: 23 Sep 2004 07:57:16 -0700

Hallo,

bei folgendem Problem komme ich nicht weiter:
Ich habe eine Funtkion aus einer C++-DLL nach Delphi importiert, die
z.B. so aussieht:

C++:
long DllFunc( char* name )

Delphi:
function myDllFunc( name: PChar ): LongInt

Zwar klappt der Funktionsaufruf, allerdings liefert die Funktion bei
gleichen Parametern unter Delphi nicht dasgleiche zurück, wie in einem
c++-Testprogramm.

C++:
void TestFunc( char* name )
{
  long result = myDllFunc( name );
}

Delphi:
procedure TestFunc( name: PChar )
var result: LongInt;
begin
  result := myDllFunc( name );
end;

Ich kann nur vermuten, daß es irgendwie mit Unterschieden zw. char*
und PChar zu tun haben könnte, komme aber allein nicht weiter.
Viele Dank für Eure schnelle Hilfe.
MfG
Schna



Relevant Pages

  • Re: C++ - Aufruf mit Parameterübergabe in Delphi
    ... > Zwar klappt der Funktionsaufruf, ... > gleichen Parametern unter Delphi nicht dasgleiche zurück, ... > procedure TestFunc(name: PChar) ...
    (comp.lang.pascal.delphi.misc)
  • c++ typedefs to delphi
    ... I am too addicted to Delphi but I now have to port some functions from a DLL ... PChar; outbytesleft: PInteger): integer; external 'iconv.dll' name ... var codepageFrom, codePageTo: arrayof char; ...
    (borland.public.delphi.nativeapi)
  • Re: Schade
    ... Ich hab' vor laaanger Zeit auch mal Gooey-Programme mit BP gebaut - ein ... concat(PChar('Hier sind 255 Zeichen drin!'), ... PChar ); ... Gibt's in TP/BP nicht und in Delphi erst seit kurzem. ...
    (de.comp.lang.pascal)
  • Re: Printer.Filename missing
    ... (Martin Vieregg) ... A long string always has a zero-byte appended to it by Delphi, ... PChar() returns the address of the first character. ...
    (comp.lang.pascal.delphi.misc)