Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.03.03;
Скачать: [xml.tar.bz2];

Вниз

Работа с сокетами в Indy, помогите   Найти похожие ветки 

 
Vilux   (2003-12-25 05:02) [0]

Подскажите, пожалуйста, как в INdy работать с сокетами. С простыми сокетами я делаю так... отсылаю запрос серверу, потом функцией recv принимаю ответ сервера... но как подобное сделать на Indy? Я не нашел примеров... интересует это в связи с тем, что нужно, чтобы был контроль таймаутов, а сокеты часто зависают...

procedure sender(str:string);
var
I1: integer;
begin
for I1:=1 to Length(str) do
if send(sock2, str[I1] , 1, 0) = SOCKET_ERROR then
begin
writelog("Ошибка отправки через сокет",pnum);
exit;
end;
end;
.........
postinf:="....";
st:="POST http://www.site.ru HTTP/1.0"+#13+#10;
st:=st+"Content-Type: application/x-www-form-urlencoded"+#13+#10;
st:=st+"Host: www.site.ru"+#13+#10;
st:=st+"Content-Length: "+inttostr(length(postinf))+#13+#10;
st:=st+#13+#10;
st:=st+postinf+#13+#10;
sender(st+#13+#10);


 
S@shka   (2003-12-25 09:50) [1]

var
TCP : TIdTCPClient;
temp : String;
begin
TCP.Host := "bla-bla.com";
TCP.Port := 1234;
try
TCP.Connect;
TCP.Writeln ("SuperMan login");
temp := TCP.Readln ("",3000); // 3000 - TimeWait
if (temp <> "") then // Что то пришло
begin
MessageBox (Handle,"SuperMan LOgin","Succ",0);
end;
finally
TCP.Disconnect;
end;
end;


 
BlackSun   (2003-12-26 17:34) [2]

Делаю как описал S@ashka©...
var
TCP : TIdTCPClient;
temp : String;
begin
tcp:=TIdTCPClient.Create(nil);
TCP.Host := " http://www.server.ru";
TCP.Port := 80;
try
TCP.Connect;
TCP.Writeln ("login");
temp := TCP.Readln ("",3000); // 3000 - TimeWait
if (temp <> "") then //
begin
MessageBox (Handle,"SuperMan LOgin","Succ",0);
end;
finally
TCP.Disconnect;
tcp.Free;

При выполнении TCP.Connect вылетает с ошибкой EIdSocket Error 11004 (WSANO_DATA NO_DATA)
Как быть?



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2004.03.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.007 c
1-6149
DeLz
2004-02-19 09:12
2004.03.03
Вызов процедур различной структуры без объявления типа???


14-6225
werr
2004-02-11 12:09
2004.03.03
вопрос по W 2k


6-6176
Checist [root]
2003-12-27 03:04
2004.03.03
Проверка полной загрузки


14-6207
Samoilov
2004-02-11 15:49
2004.03.03
Драйвер


3-5997
snake7
2004-02-05 13:09
2004.03.03
Работа ч/з ADO





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский