![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Si pones el codigo que usas es mas facil darte una mano.
Saludos, |
|
#2
|
|||
|
|||
|
Código
Cita:
Al procedimiento se le pasa el objeto AThread del tipo TIdPeerThread. Al conectarse algún programa, leo el header del request: str:=AThread.Connection.ReadLn(#13#10#13#10,5000); En el procedimiento creo al objeto que va a conectarse a la página pedida var Client: TIdTCPClient (...) Client:=TIdTCPClient.Create(nil); Luego envío el request, que si tiene cuerpo, también lo envío. Después, leo el header (encabezado) de la repuesto str:=Client.ReadLn(#13#10#13#10,15000); Con una función obtengo si existe el campo Content-Length y si es así la función me devuelve la longitud del cuerpo del mensage: l:=GetContentLength(str); If l>0 then begin //Aquí no hay problema end else begin //Aquí es el problema repeat Client.CheckForDisconnect(false); If not Client.Connected then Break; //Aquí es donde se queda trabado str:=Client.ReadString(1); repeat try AThread.Connection.Write(str); blRepeat:=false; except blRepeat:=false; AThread.Connection.CheckforDisconnect; If not ATHread.Connection.Connected then raise; end; until not blRepeat; until not Client.Connected; end; Bueno, espero que me puedan ayudar. Gracias por todo. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|