Показать сообщение отдельно
  #1  
Старый 29.03.2010, 18:42
Aig Aig вне форума
Прохожий
 
Регистрация: 29.03.2010
Сообщения: 2
Репутация: 10
Восклицание TidMessage и FileStream

Есть проблема.
Записываю полученные письма в файл:
(пример)
var
intI :integer;
Stream: TFileStream;
begin
Stream := TFileStream.Create('d:\test2.dat', fmCreate);
for intI := 1 to FMsgCount do
begin
idmes1.Clear;
Application.ProcessMessages;
POP.Retrieve(intI, idMes1); //читать с сервера
idMes1.SaveToStream(stream,false);
end;
stream.Free;
end;

В другой момент времени считываю записанные сообщения из этого файла:
Stream := TFileStream.Create('d:\test2.dat', fmOpenRead);

while (Stream.Position < Stream.Size) do
begin
Msg1.Clear;
msg1.LoadFromStream(stream,false);
// фаза отображения.....
end;
stream.Free;

Проблема в том, что считывается только одно сообщение (записывалось несколько). При этом Stream.Position = Stream.Size.
В файле все письма есть, разделитель (CR.CR) тоже.
В чем проблема и как ее решить?
Ответить с цитированием