Hola Caro.
Te puedo comentar del tema de las excepciones, si quieres que pruebe algo de la conexión me puedes enviar un proyecto de prueba, creo que tengo alguna cuenta de GMail por ahí, aunque no la uso normalmente, y lo pruebo gustoso.
En cuanto a las excepciones, lo único que yo cambiaría es que después de hacer el
AddLog colocaría un
Exit (o un
raise), porque sino como ya has capturado la excepción, el programa intentará continuar. Y eso creo que no te interesa.
Es decir; Si falla la conexión en la línea:
Como ya capturas la excepción correctamente en:
Código Delphi
[-] except
On Error: Exception Do
AddLog('No se ha podido conectar con el servidor POP. Error: ' + Error.message);
end;
El programa intentará continuar con la siguiente línea; Es decir:
Código Delphi
[-]
TotalMails:=idpop3.CheckMessages;
Y supongo que como la conexión ya no se ha hecho bien, volverá a dar error.
Lo que yo haría es salir con un
Exit, depues de capturar cada error y añadirlo al log. En este caso no creo que te interese propagar la excepción con raise.
Un saludo.