Esa rutina es la que escribio el Maestro Rene Flores de CiberTec para enviar correos electronicos y funciona muy bien, solo tienes que tomar en cuenta algunas cosas:
1) El remitente de correo necesita tener una cuenta en un servidor de correo que soporte SMTP, los correos web como Hotmail o Yahoo no tienen esta funcionalidad.
2) El correo electronico solo puede enviarse desde UNA VENTANA, es decir, tiene que existir por lo menos la ventana principal del programa para poder enviar el correo.
3) La llamada al constructor de la clase debe hacerse 2 veces, como bien te mencionaron.
4) el metodo SendMail recibe los siguientes parametros en este orden
1.- Direccion electronica del remitente, como te mencione anteriormente, el remitente debe tener una cuenta en el servidor de correo SMTP que estas usando.
2.- Un array con las direcciones de correo electrónico de los destinatarios, aunque solo sea uno, deberás indicar la direccion entre {}, por ejemplo : {"
[email protected]"} o {"
[email protected], "
[email protected]", "
[email protected]"}
3.- El cuerpo del mensaje, que puede ser un archivo de texto o una cadena de caracteres de la longitud que quieras
4.- El asunto del correo
5.- Otro array con los nombres de los archivos añadidos al mensaje de correo, atencion con esto, por un error de la clase TSMTP, TODO LOS ANEXOS SON TRATADOS COMO TEXTOS, es decir, no importa que mandes un ZIP un PDF o un DBF, todos se "pegaran" al mensaje de correo como parte del cuerpo del mismo, para evitar esto deberas utilizar la clase TSOCKET y TSMTP modificadas por Luis Krause, las puedes obtener de www.fivewin.info