Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#14

Re: C++ DLL in Delphi einbinden

  Alt 2. Jul 2004, 12:55
Zitat von Muetze1:
Ich meine ebend nicht diesen TypeCast, da der bei der Weitergabe an die DLL Probleme machen kann (und bei mir auch meistens macht), daher habe ich nicht umsonst auf StrAlloc() verwiesen. Alloziiere den PChar mit StrAlloc()...
StrAlloc gehört zu den backward compatibility routines.
Dagegen ist die Vorgehensweise, die ich vorgeschlagen habe "Delphi-Like".
Es wird mit SetLength dynamisch Speicher reserviert. Denoch braucht sich der
Programmierer nicht um die Freigabe des Speichers zu kümmern.
Man darf bedenkenlos einen Zeiger auf den reservierten String in eine externe Funktion hineingeben und darauf vertrauen, dass die Funktion auf den Zeiger schreiben darf (solange die Länge nicht überschritten wird).
Allerdings hätte ich vielleicht dazu sagen müssen, dass nur AnsiStrings erlaubt sind:
Delphi-Quellcode:
var
   otrailer : AnsiString; // (auch als langer String bezeichnet)
Andreas
  Mit Zitat antworten Zitat