Guten Morgen,
Ich hab folgende Stelle im Code:
Delphi-Quellcode:
resourcestring
msgString = 'My %s Message';
.
.
uses Dialogs;
.
.
var
asValue : AnsiString;
begin
asValue := 'MyValue';
ShowMessage(Format(msgString,[asValue]));
end;
Jetzt bekomm ich im Debugger die Meldung "Ungültiger Ausdruck im Evaluator", das Programm hängt sich einfach auf.
Wenn ich das jetzt so abändere:
Delphi-Quellcode:
var
asValue : AnsiString;
sMsg,sValue : String;
begin
asValue := 'MyValue';
sMsg := msgString;
sValue := asValue;
ShowMessage(Format(msgString,[asValue]));
end;
Also ohne effektiv was zu ändern, dann wird mir der String normal ausgegeben und das Programm hängt sich auch nicht auf.
Für mich ein unerklärbares Phänomen, kann mir jemand erklären was da passiert?