jetzt übergibst Du einen Pointer von einem Pointer .. also doppelt gemoppelt.
So wie ich das geschrieben habe, geht es auf jeden Fall. Ich habe für sowas sogar extra eine Klasse gebaut, die (urpsrünglich) normale Events als asynchrone Events genau nach dieser Methode vom Thread an den Hauptthread schickt.
Umwandlung dann natürlich:
... nicht Pointer() sondern TLogMessage()
Delphi-Quellcode:
var
logMessage: TLogMessage;
fdebug: Boolean;
fLogText: string;
begin
logMessage := TLogMessage(msg.WParam);
mit dem doppelt gemoppelten Pointer in Deiner jetzigen Version wäre das dann:
logMessage := TLogMessage(msg.WParam^);
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.