Delphi -> TCP

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Apeckou, 31 Aug 2012.

  1. Apeckou

    Apeckou Elder - Старейшина

    Joined:
    23 Jan 2007
    Messages:
    143
    Likes Received:
    11
    Reputations:
    0
    Никогда не думал, что буду писать на форуме по такой фигне, но уменяничегонипалучаицо!

    Нужно отправить на сервер TCP строку и получить в ответ 2 ответа. Всего-то.
    Пробовал через winsock - в нем я пока мало понимаю, получилось отправить запрос и вроде бы получить первый ответ, а второй с ошибкой вылетает. хрен с ним
    Пробую щас через банальный idTCPclient сделать вот так:

    PHP:
    procedure Twin.Button1Click(SenderTObject);
    var  
    answer:TStringList;
    begin
    TCP
    .Host:=form1.edit1.text;
    TCP.Port:=9090;
    tcp.Connect;

    TCP.Socket.WriteLn(form1.edit2.text);
    showmessage('ok');

    answer:=TStringList.create;
    TCP.Socket.ReadStrings(answer);
    showmessage(answer.text);
    answer.free;

    end;
    так вот шоумессадж ОК выскакивает, а потом все приложение зависает и остается его только через диспетчер закрывать.
    Пробовал устанавливать readTimeout, собсна тогда он и срабатывает и вылетает exception что мол долго ждемс.
    По сниферу смотрю - запрос отправляется удачно и даже ответ приходит. Только вот прога зависает и его не выдает.
    Я тупой или где?