Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.08.2009, 08:55
Qwed86 Qwed86 вне форума
Новичок
 
Регистрация: 12.09.2008
Сообщения: 66
Репутация: 10
По умолчанию TServerSocket

Вобщем проблема такая.
При коннекте к серверу клиент посылает на него определённый номер(один клиент каждый раз один и тот же номер), предположим 1111, другой клиент пусть 2222.
Я хочу чтоб при коннекте создавался файл, название которого этот номер, и чтоб всё что приходило на сервер от этого клиента писалось в этот файл.
Уже много где перелазил, пересмотрел, но ничего не выходит. Я так понимаю нужно использовать socket.data? И записывать туда номер в событии ServerSocket1ClientRead.
Пробовал разными способами, но всё время ошибки то с памятью то ещё какие.
Кто может помочь?
Ответить с цитированием
  #2  
Старый 06.08.2009, 16:34
Qwed86 Qwed86 вне форума
Новичок
 
Регистрация: 12.09.2008
Сообщения: 66
Репутация: 10
По умолчанию

1 день - 1 просмотр этой темы и тот мой при её создании.
Да, помирает форум видимо.
Ответить с цитированием
  #3  
Старый 07.08.2009, 10:05
newbas newbas вне форума
Прохожий
 
Регистрация: 04.08.2009
Сообщения: 11
Репутация: 10
По умолчанию

Есть компонент в Д7 TIdTCPServer лучше использовать его.
Событие onExecute происходит, когда клиент пишет в сервер, тогда обработку будет
Код:
procedure TForm1.ServerExecute(AThread: TIdPeerThread);
var f: TFileStream;
    s,FileName,Ip,InBox,OutBox,s1: string;
    List:TStringList;
    Res,i,Err,Count,Size:integer;
    Rect:TRect;
begin
   // Читаем номер 1111 или 2222
   s := AThread.Connection.ReadLn;
   With AThread.Connection do
     begin
        // Получаем размер файла
         Size:=ReadInteger();
         f := TFileStream.Create(s, fmCreate );
        try
           ReadStream(f,Size);
           //AddLog('Принят файл '+s+' от '+ip);
           // Переименовываем файл
           F.Free;
        except
           //AddLog('Ошибка приема файла '+s);
           F.Free;
        end;
      Disconnect;
    end;
end;
Ответить с цитированием
  #4  
Старый 07.08.2009, 12:27
Qwed86 Qwed86 вне форума
Новичок
 
Регистрация: 12.09.2008
Сообщения: 66
Репутация: 10
По умолчанию

Спасибо. Я уже без indy сделал.
Если будут лаги перейду на них может.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 12:04.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025