Einzelnen Beitrag anzeigen

freepinguin

Registriert seit: 25. Jan 2010
3 Beiträge
 
#1

Integer wert als Float interpretieren

  Alt 25. Jan 2010, 15:11
Hallo erst einmal

ich bin hier neu und hoffe im Richtigen Forum gelandet zu sein

also mein Problem ist ich bekomme über eine Windows Nachricht aus einer Dll ein Ereignis mitgeteilt in diesem ist im parameter Msg.lParam (integer) ein messwert codiert der von der DLL als Float geschrieben wird.

Wie lann ich nun diesen wert in delphi auch als Float behandeln

ich habe mit eine Funktion geschrieben

Delphi-Quellcode:
function LongToFreq(lParam : Integer):Float;
var
  fFloat : pointer;
begin
  fFloat:=@lParam;
  result:=float(fFloat^);
end;
und so sieht der Aufruf aus
Delphi-Quellcode:
procedure TDT30xRPM.do_Done(var MSG : TMessage);
begin
  fRPM:=LongToFreq(msg.LParam);
end;
nun erhalte ich in der Var fRPM den wert 0 obwohl result auf einem anderen Wert steht

was mache ich falsch

schöne grüße vom bodensee
  Mit Zitat antworten Zitat