Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2009, 08:54   #1
udaf
Новичок
Джуниор
 
Регистрация: 25.11.2009
Сообщений: 1
По умолчанию Indy и поток MemoryStream

Подскажите как сделать. Есть обычния реализация:

сервер:
Код:
procedure  Tform1.IdTCPServer1Execute(AContext: TIdContext);
var
fstream:TMemoryStream;
begin

...
// п.1 Создаю поток
  fstream:=TMemoryStream.Create;
  AnyFile.SaveToStream(fstream);

// п.2 принимаю, запрос от клиента
z := AContext.Connection.IOHandler.ReadLn;

   ifSameText(Copy(z, 1, 11), 'get_stream ') then
  begin
        // п.3 Отправляю поток
        AContext.Connection.IOHandler.Write(fstream);
    end;

  // п.4 Разрываю соединение
  AContext.Connection.Disconnect;

...
end
клиент:
Код:
procedure TForm3.Timer1Timer(Sender: TObject); 
var
fstream:TMemoryStream;
begin

...
   fstream:=TMemoryStream.Create;
 
   IdTCPClient1.Connect;
   IdTCPClient1.IOHandler.WriteLn('get_screen ');
   IdTCPClient1.IOHandler.ReadStream(mem,-1,true);

...
end;

Вопрос: как сделать так, чтобы ни сервер, ни клиент не разеденялись, сервер также слал потоки, а клиент их принимал. Т.Е. если заново писать "IdTCPClient1.Connect;" , когда срабатывает таймер, то открывается новое соединение (клиент соединяется другим портом с сервером). Я не хочу работать по принципу одно соединение - один запрос. Нужно сделать, так, чтобы из одного соединения клиент вытаскивал файлы, которые ему шлет сервер.

Последний раз редактировалось Stilet; 07.12.2009 в 09:52.
udaf вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с Graphic и MemoryStream andrey4623 Мультимедиа в Delphi 10 16.07.2009 22:11
Загрузить видео из MemoryStream Hottabych Мультимедиа в Delphi 3 25.03.2009 05:47
Indy и поток milkfake Работа с сетью в Delphi 8 06.03.2009 10:14
Поиск в MemoryStream... Hottabych Общие вопросы Delphi 6 17.02.2009 20:37
Проблема с отправкой MemoryStream от сервера к клиенту Ragnarek Работа с сетью в Delphi 4 07.02.2009 10:29