Das ist alles doch viel zu kompliziert. Eine Zuweisung von string zu ShortString oder z.B. string[31] und umgekehrt funktioniert aus dem Stand:
Delphi-Quellcode:
program Project598;
{$APPTYPE CONSOLE}
var
nMenu: string;
sMenu: string[31];
begin
nMenu := 'Hello World';
sMenu := nMenu;
Assert(nMenu = sMenu);
sMenu := 'Hello World';
Assert(nMenu = sMenu);
nMenu := sMenu;
Assert(nMenu = sMenu);
end.
Schön wäre das ja, aber da scheint es dann Probleme zu geben, wenn ich an eine Klasseneigenschaft zuweise. FCmd.Menuname ist nach wie vor leer. Wo könnte ich da noch suchen? Steh auf dem Schlauch. Werde aber den obigen Code testen.