FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
incomodidad con indy
Buenas! quería hacer una pregunta un poco repetitiva con respecto a indy, he estado viendo en el foro y en otras partes y siempre me encuentro con el detalle de que al usar el TidHTTP para descargar archivo la ventana se pega, para solucionar esto pongo esto:
pero solo se refresca la ventana al recibir datos... del resto se pone lenta o se pega... me gustaría saber si hay alguna forma de usar indy o bajar archivos de internet sin que pase esto que se congela la ventana. Un saludo! |
#2
|
|||
|
|||
Hola Shadowng,
Si lo que quieres es que tu aplicación no se "congele" mientras descarga el fichero, tendrías que implementar el proceso de descarga en un hilo secundario. De este modo, el hilo principal de tu aplicación quedaría libre y el secundario se encargaría de descargar el fichero. Espero que te ayude. Un saludo. |
#3
|
||||
|
||||
gracias por la respuesta manuc, estaba pensando en algo así pero no se hacerlo en delphi xD ... estaba incluso pensando en usar cURL pero teniendo indy supongo que tener un .exe al lado de la app estaría de mas...
no estoy seguro como podría tener varios hilos en mi aplicación o.o por ahi lei algo de los thread (cuando trabaje en java era lo que me evitaba que se colgara la app en los bucles for y while) pero no entiendo como funcionan aqui si tienes algún tutorial de los thread o thread e indy seria genial... (claro si es que se usa el thread para crear hilos independientes xD) |
#4
|
||||
|
||||
El manejo de hilos en delphi no es muy diferente de otros lenguajes como Java o c++, basta con que heredes una clase TThread y juegues con las propiedades de prioridad y ejecucion. Otra opcion seria usar Timers, es una solucion mas rapida con procedimientos sencillos. |
#5
|
|||
|
|||
Hola,
La verdad es que no tengo ningún manual y desconozco si habrá alguno en Internet, sobre cómo usar Delphi y TThreads. Creo que si buscar Delphi y TThread en google, encontrarás varios artículos que te darán una idea muy clara de cómo programar un TThread con Delphi. Lo de combinar TThreads e Indy, es cosa ya del ingenio. Yo te recomendaría, simplemente, que implementes un hilo secundario para la descarta y que dentro de este hilo crees un componente tidHTTP para realizar la descarga. Espero haberte orientado un poco. Un saludo. |
#6
|
||||
|
||||
tranquilo manuc ya lo solucione! xD me costo un poco porque puse el Thread en otro .pas y eso no lo suelo hacer asi que fue algo un poco nuevo pero ya vi y anda perfecto el programa sobre todo con la sincronizacion entre el thread y la ventana :3
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ftp Indy | odrack | Varios | 2 | 13-10-2010 03:54:40 |
Migrando de Indy 9 a Indy 10 | edgwin | Internet | 2 | 05-07-2010 17:53:58 |
Ayuda con incompatibilidad del Post de TIdHTTP de Indy 8 con Indy 10 | rolandoj | Internet | 13 | 24-12-2008 13:19:01 |
Como reemplazar Indy 10 por Indy 9 en Delphi 2007 ? | rolandoj | Internet | 0 | 13-02-2008 18:44:31 |
Indy | ArdiIIa | Internet | 5 | 20-11-2003 17:08:30 |
|