Schau mal nach WM_Copydata
Quellcode in der versendenden
Unit
Delphi-Quellcode:
type TDatenaustausch =
record
dwData, cdData: integer;
lpData:
string;
end;
...
// result ist hier ein string (liegt also in einer Funktion: string)!!
with Datenaustausch
do
begin
dwData := 0;
cdData := Length(result) + 1;
lpData := result;
end;
SendMessage(LoaderForm.Handle, WM_COPYDATA, Longint(
Handle),
Longint(@Datenaustausch));
Quellcode in der empfangenden
Unit
Delphi-Quellcode:
procedure Nachricht_anzeigen(var MSG: TWMCopyData);message WM_COPYDATA;
begin
Label.Caption := String(PChar(Msg.CopyDataStruct.lpData));
end;
So tausche ich Daten bei der Initalisierung meines Projektes aus. Also die einzelnen Units senden Berichte an das Splash mit dem was sie gerade machen. Funktioniert bei mir wunderbar.
2. Account Sero