PDA

Ver la Versión Completa : Se cuelga al Crear frame en el evento TCPServer.Accept!!


fer21unmsm
19-01-2006, 15:57:18
Hola a todos, mi duda es la siguiente:

Tengo una aplicación Cliente-Servidor, en el evento TCPServer.Accept, es donde recibe el servidor lo que el cliente le manda(cadenas de texto), luego en ese mismo evento necesito crear un Tframe, el cual contiene un Tmemo, y agregarle a ese Tmemo la cadena enviada por el cliente, el problema surge cuando creo el TFrame, despues de crearlo se cuelga o se congela la aplicación, ¿a que se puede deber, y como lo puedo solucionar?

Pd: yo ya tengo un frame creado, sólo quiero instanciarlo cada vez que entre al evento "Accept" de TCPServer, la razón es por que estoy construyendo un chat interno(red lan), y cada vez que entra a ese evento determino si es un cliente nuevo, y si es así tengo que crear el frame.

Saludos y gracias de antemano, espero respuestas.

fer21unmsm
19-01-2006, 21:40:03
Alguna idea?

Hola a todos, mi duda es la siguiente:

Tengo una aplicación Cliente-Servidor, en el evento TCPServer.Accept, es donde recibe el servidor lo que el cliente le manda(cadenas de texto), luego en ese mismo evento necesito crear un Tframe, el cual contiene un Tmemo, y agregarle a ese Tmemo la cadena enviada por el cliente, el problema surge cuando creo el TFrame, despues de crearlo se cuelga o se congela la aplicación, ¿a que se puede deber, y como lo puedo solucionar?

Pd: yo ya tengo un frame creado, sólo quiero instanciarlo cada vez que entre al evento "Accept" de TCPServer, la razón es por que estoy construyendo un chat interno(red lan), y cada vez que entra a ese evento determino si es un cliente nuevo, y si es así tengo que crear el frame.

Saludos y gracias de antemano, espero respuestas.

delphi.com.ar
19-01-2006, 22:09:59
Si pones el código de creación del TFrame en el evento OnClick de un botón, por ejemplo... ¿También se cuelga?
¿Un TCPServer es un TIdTCPServer?... Recuerda que al menos en la versión 9 cada conexión se maneja en un hilo diferente. Posiblemente tengas un problema por no sincornizar el código en ejecución con el hilo de la VCL.

fer21unmsm
20-01-2006, 18:15:54
Si pones el código de creación del TFrame en el evento OnClick de un botón, por ejemplo... ¿También se cuelga?
¿Un TCPServer es un TIdTCPServer?... Recuerda que al menos en la versión 9 cada conexión se maneja en un hilo diferente. Posiblemente tengas un problema por no sincornizar el código en ejecución con el hilo de la VCL.

Hola delphi.com.ar, probé poniendolo en un hilo y sincronizandolo, y salió a la perfección, gracias man.

Saludos