Thema: Delphi Probleme mit WM_CopyData

Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.429 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: Probleme mit WM_CopyData

  Alt 5. Jan 2016, 11:28
Bei unterschiedlichen Prozessen ist die Adresse nur so lange gültig, bis die Nachricht verarbeitet wurde.
An dieser Stelle muss ein neuer String mit einer Kopie der Zeichenkette angelegt werden:
Delphi-Quellcode:
..
s := PChar(Msg.CopyDataStruct.lpData);
..
Der zusätzlichen Cast auf String ist ungültig, denn lpData verweist nur auf einen Puffer mit einer 0-terminierten Zeichenkette.
Bei einem String liegt ein Teil der Daten (z.B. Referenzzähler) vor dieser Adresse.
  Mit Zitat antworten Zitat