Excepción Maldita

Trato de hacer que cuando Cliente (=TClientSocket) no se pueda conectar al TServerSocket porque este no se ha iniciado previamente lance mi mensaje de error. Este es el código, pero nunca escribe 'ERROR' ... ¿qué hago mal?
try
Cliente.Open();
ShowMessage('Servidor encontrado.');
except
ShowMessage('ERROR');
end;

1 respuesta

Respuesta
1
¿Estás seguro que el cliente lanza una excepción? Puede que el error simplemente quede registrado en alguna propiedad de tu objeto Cliente o que el Open sea una función que te devuelva un booleano...
Creo que open es un procedimiento que no devuelve nada, pero no estoy seguro. Yo no sé si lanza o no una excepción, ... pero si quieres te escribo el error que aparece en pantalla:
" Project Cliente.exe raised exception class ESocketError with message 'Asynchronous socket error 10061' ".
¿Any idea? Gracias.
Ok, resulta que la clase TClientSocket controla los errores mediante un evento... por eso no llega a "entrar" en la zona de except
Para que no te salga el error debes configurar el evento OnError de tu objeto Cliente y en ErrorCode asignarle el valor de 0.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas