Zitat von
himitsu:
Delphi-Quellcode:
procedure ProcedureA(Gewicht : double)
var
pGewicht: PDouble;
begin
New(pGewicht);
pGewicht := Gewicht;
PostThreadMessage(MyThreadId, WM_Gewichtserfassung, intAndererwert, Integer(Gewicht));
end;
procedure TScheduleThread.Execute;
var
Gewicht: double
begin
Gewicht := PDouble(Gewichtsparameter)^;
Dispose(PDouble(Gewichtsparameter)); // das Freigeben nicht vergessen
ShowMessage(FloatToStr(Gewicht));
end;
Das schaut gut aus, aber: Sind folgende Korrekturen korrekt? (@ und 'p' hattest du vergessen):
Delphi-Quellcode:
procedure ProcedureA(Gewicht : double)
var
pGewicht: PDouble;
begin
New(pGewicht);
pGewicht := @Gewicht;
PostThreadMessage(MyThreadId, WM_Gewichtserfassung, intAndererwert, Integer(pGewicht));
end;
Wenn ja, habe ich leider dasselbe Problem wie vorher.