Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Konzeptfrage Wertübergabe

  Alt 10. Sep 2009, 13:24
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
  Mit Zitat antworten Zitat