Такое дело: Запускаю программу клавишей Ф4, и доходя до посылки пост запроса (Ф8), когда запрос начинается через 1-2 сек прога закрывается. скрин делфи с ошибкой ниже Код запроса PHP: http:=tidhttp.Create(nil); a:=tstringlist.Create; a.Add('1'); a.Add('2'); a.Add('3'); a.Add('4'); otv:=http.Post('http://sait.ru/',a); Скрин(нажмите на картинку чтоб увеличить): Зарание спасибо, очень срочно нужно избавится от ошибки.
Почтиай, что такое ошибки и что такое исключения и когда исключения бывают ошибками. Это не ошибка(в данном случае). Скорее всего в заголовках отправляешь Connection: close; Сервер разъединяет соединение когда все отправил, но кстати иногда это исключение бывает и ошибкой. Как вариант, отправлять Connection: keep-alive; и разъединять потом самому или на это исключение забить и сделать как то так : Code: var html: AnsiString; Begin html := ''; with TMemoryStream.Create do try try http.Post('http://site.ru', a, Stream); except on e1: EIdConnClosedGracefully do; else raise; end; SetLength(html, Size); Move(Memory^, html[1], Size); finally Free; end; //Теперь в html твой ответ end;
Выдает ошибку в строке PHP: on E: EIdConnClosedGracefully do; EIdConnClosedGracefully: не объявленный идентификатор
Ну раз неизвестный идентификатор, то стоит подключить дополнительный модуль(в Uses), имя модуля можно узнать из гугла по имени исключения, я не помню.