Piendo lo mismo, la única explicación que queda es que la variable esté vacía;
Pon antes de la asignación un breakpoint y mira el valor o escribe:
Código Delphi
[-]
MessageDlg('Valor de la cadena: ' + cadenaTexto, mtInformation, [mbOK], 0);
a ver que valor te muestra; y después de la asiganación un:
Código Delphi
[-]
MessageDlg('Valor del memo: ' + Memo1.Lines.Text, mtInformation, [mbOK], 0);