проблема в том, что тебе не надо открывать файл, т.к. LoadFromFile сама все сделает. Убираешь из кода строки:
AssignFile(f, OpenDialog1.Files[i]);
if opendialog1.FileName <> '' then
CloseFile(f);
А строку
Opendialog1.Execute;
меняешь на
If Opendialog1.Execute Then
Begin
...
End;
Должно получиться что-то типа:
Код:
memo1.Lines.Clear;
if Opendialog1.Execute then
begin
for i:=0 to opendialog1.Files.Count-1 do begin
memo1.Lines.LoadFromFile(OpenDialog1.Files[i])
...
Работа с содержимым Memo1.
...
end;
end;