Einzelnen Beitrag anzeigen

Benutzerbild von creality
creality

Registriert seit: 14. Mai 2007
Ort: Double D Town
39 Beiträge
 
Delphi 2007 Professional
 
#1

Record von Thread an MainApplication?

  Alt 26. Jun 2007, 10:13
Hallo Forum,

zur Zeit nehme ich diese Methode um Messages aus Threads heraus (OHNE SYNCHRONIZE!!!) an meine MainApp zu verschicken:

AUSSM THREAD:
Delphi-Quellcode:
{Message to Main --------------------------------------------------------------}

procedure PreProcessing_RED.PostToRedConsole(msg: shortstring);
var
  msgstrptr: PShortstring;
begin
  new(msgstrptr);
  msgstrptr^ := msg;
  postmessage(EyePiU_main.handle, RedMsg, integer(msgstrptr), 0);
end;
IN DER MAINAPP

Delphi-Quellcode:
{MessageFromChannelRed --------------------------------------------------------}

procedure TEyePiU_main.OnREDChannelMessage(var MR: TMessage);
var
  msgstrptr: PShortstring;
begin
  msgstrptr := ptr(MR.wparam);
  memo_RED.lines.Insert(0, msgstrptr^);
  dispose(msgstrptr);
end;
So klappts ohne Performanceeinbrüche.

Meine Frage nun...wie kann man ein Record oder ein Array statt einer Message übergeben? Und wie kommt man dann in der MainApp auf die einzelnen Record oder Array Elemente?
  Mit Zitat antworten Zitat