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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2008, 13:04   #1
JRcoker
Форумчанин
 
Аватар для JRcoker
 
Регистрация: 18.07.2008
Сообщений: 119
Плохо TClientSocket ответ от сервера

Возможно ли зделать что-то что бы TClientSocket быстрее получал ответ от http сервера?..
Улыбайся...Люди любят идиотов...
JRcoker вне форума Ответить с цитированием
Старый 29.09.2008, 20:28   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Создать свой сервер и клиент на своем ПК без сети.
BOBAH13 вне форума Ответить с цитированием
Старый 29.09.2008, 22:04   #3
JRcoker
Форумчанин
 
Аватар для JRcoker
 
Регистрация: 18.07.2008
Сообщений: 119
По умолчанию

Ну это понятно...
Но мне нужно подкличится не к своему серверу...Я натыкался на программу через TClientSocket получает ответ быстрее чем его получаю я...Хотя сервер один и тодже...
Улыбайся...Люди любят идиотов...
JRcoker вне форума Ответить с цитированием
Старый 29.09.2008, 23:54   #4
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Какой сервер ? Что вы используите ? Как вы подключаитесь ?
BOBAH13 вне форума Ответить с цитированием
Старый 30.09.2008, 21:24   #5
JRcoker
Форумчанин
 
Аватар для JRcoker
 
Регистрация: 18.07.2008
Сообщений: 119
По умолчанию

сервер mail.ru
подключаюсь так

Код:
procedure TForm2.MySocket1Write(Sender: TObject; Socket: TCustomWinSocket);
begin
Socket.SendText('GET / HTTP/1.1'+#10+
          'Host: mail.ru'+#10+
          'User-Agent: Opera 9.51'+#10
          +#10);
          while MySocket1.Active=true do Application.ProcessMessages;
end;


procedure TForm2.SendClick(Sender: TObject);
begin
MySocket1.Open;
MySocket1.Close;
end;
в обциях клиента прописываю адрес и порт...

как-то так....
Улыбайся...Люди любят идиотов...
JRcoker вне форума Ответить с цитированием
Старый 30.09.2008, 22:10   #6
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

А зачем это ?
Код:
while MySocket1.Active=true do Application.ProcessMessages;
Ерунда какая то Почему нельзя сделать так... создать сокет - TThread, потом поставить в FreeOnTerminate и послать буфер в send ? Я воообще не пойму смысла вашего кода
BOBAH13 вне форума Ответить с цитированием
Старый 30.09.2008, 23:05   #7
s.Creator
Форумчанин
 
Регистрация: 28.09.2008
Сообщений: 344
По умолчанию

Код:
procedure TForm2.SendClick(Sender: TObject);
begin
    if MySocket1.Connect then
    begin
      MySocket1.SendText('GET / HTTP/1.1'+#10+
          'Host: mail.ru'+#10+
          'User-Agent: Opera 9.51'+#10
          +#10);

      if MySocket1.WaitForData(30000) then
        begin
          MySocket1.ReceiveText...............................
        end;   
    end;


end;
s.Creator вне форума Ответить с цитированием
Старый 01.10.2008, 00:29   #8
JRcoker
Форумчанин
 
Аватар для JRcoker
 
Регистрация: 18.07.2008
Сообщений: 119
По умолчанию

s.Creator ошибок куча...И чем это может ускорить ответ от сервера?..
Улыбайся...Люди любят идиотов...
JRcoker вне форума Ответить с цитированием
Старый 01.10.2008, 09:10   #9
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

А кто сказал что это должно было ускорить работу ?
вопрос был
Цитата:
Возможно ли зделать что-то что бы TClientSocket быстрее получал ответ от http сервера?..
ответ вам дан выше.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 02.10.2008, 01:26   #10
JRcoker
Форумчанин
 
Аватар для JRcoker
 
Регистрация: 18.07.2008
Сообщений: 119
По умолчанию

Цитата:
Ерунда какая то Почему нельзя сделать так... создать сокет - TThread, потом поставить в FreeOnTerminate и послать буфер в send ? Я воообще не пойму смысла вашего кода
я не знаю как пользоваться TThread...
Всё-таки вопрос в силе как быстрее получить ответ от сервера?..
У меня был сокет(без исходника) и он получал ответ почти мгновенно...
Улыбайся...Люди любят идиотов...
JRcoker вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TClientSocket - сохранение JRcoker Общие вопросы Delphi 4 03.08.2008 00:37
TClientSocket в потоке BlackOmen Работа с сетью в Delphi 8 27.04.2008 22:19
проблема с TServerSocket и с TClientSocket DOLBY Работа с сетью в Delphi 56 14.01.2008 16:12
Проблемка с TClientSocket Yoger Работа с сетью в Delphi 3 20.09.2007 10:40
Ответ LeoN Общие вопросы Delphi 0 07.09.2007 20:02