ich würd es am Einfachsten so machen ... auf jedenfall mußt du
data verschicken, der andere Prozess holt sich dann über diesen globalen Wert in
data selber per GlobalLock die Daten in seinen Arbeitsspeicher und kann dann daraus lesen.
Delphi-Quellcode:
Data := GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, Size);
try
DataPtr := GlobalLock(Data);
try
CopyMemory(DataPtr, PChar(aText), Size);
finally
GlobalUnlock(Data);
end;
SendMessage(aWnd, WM_TSOPLAYFILE, data, 0);
finally
GlobalFree(Data);
end;
PS: hiermit
INTEGER(dataptr^) versendest du nur die ersten 4 Byte direkt im Parameter.