Moin Ernie,
also das versteh' ich jetzt allerdings nicht?
Ist nur eine Idee aber versuch mal:
Delphi-Quellcode:
var
Ergebnis : TMyExtended;
sWork :
string;
begin
sWork := Edit1.Text;
Ergebnis := Calculate(@sWork[1],
RAD);
// Wenn das funktioniert
Ergebnis := Calculate(@Edit1.Text[1],
RAD);
// Ansonsten
Ergebnis := Calculate(PChar(sWork),
RAD);
//...
Und setze auf jeden Fall mal einen Breakpoint auf Ergebnis, und schau Dir mal an, ob hier die Übergabe des Strings funktioniert hat, also sWork auch den ^ enthält.
Was mir gerade noch als Möglichkeit einfällt:
Delphi-Quellcode:
var
Ergebnis : TMyExtended;
pWork : PChar;
begin
pWork := AllocMem(Length(Edit1.Text)+1);
try
pWork := @Edit1.Text[1];
Ergebnis := Calculate(pWork,
RAD);
//...
finally
FreeMem(pWork,Length(Edit1.Text));
end;