Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: PChars mit Null Bytes von DLL zu Programm übergeben

  Alt 27. Mär 2008, 09:17
@sir: Hast natürlich Recht, das habe ich jetzt grob unterschlagen.

Zitat von edosoft:
hmm aber wärs dann nicht einfacher ich reserviere in der dll-datei den speicherbereich den ich für die ausgabe benötige und geb den pointer dadazu und die größe zurück und kopiere dann im hauptprogramm mit move() die daten in eine dort definierte variable? so brauche ich die funktion nur einmal ausführen und hab dann gleich grüße des puffers und den puffer selber.
Nein, denn wenn die DLL den Speicher reserviert, dann muss sie ihn auch wieder freigeben. Und wie willst du das bewerkstelligen?
Eine Möglichkeit wäre über Interfaces. Und dann bist du schon fast bei COM.

Noch etwas. Die Ausgabe von einem String wird immer am Nullbyte abgeschnitten, weil Windows wieder PChars verwendet.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat