The calling part looks like this:
Code:
procedure TForm1.bDynWriteClick(Sender: TObject);
var
  MyStream: TVirtualFileStream;
begin
  MyStream:= TVirtualFileStream.Create(eMemoName.Text, fmCreate, TestDataFile);
  mTest.Lines.SaveToStream(MyStream);
  FreeAndNil(MyStream);
  lTest.Caption := 'OK';
end;
Even lTest.Captions is executed and then on end; the access violation error is shown. So no more calling to MyStream after the free.