mailSession sesion_mail
mailReturnCode codigo_retorno
mailMessage mensaje_mail
mailFileDescription mensaje_archivo
sesion_mail = create mailSession
/*Intenta la conexcion mail*/
codigo_retorno = sesion_mail.mailLogon(mailNewSession!)
If codigo_retorno <> mailReturnSuccess! Then
Destroy sesion_mail
//Si existe algun error en la conexion cancelar y salir
Choose Case codigo_retorno
Case mailReturnLoginFailure!
ls_error = "Usuario/Password incorrecto(s)"
Case mailReturnInsufficientMemory!
ls_error = "Memoria insuficiente"
Case mailReturnTooManySessions!
ls_error = "Demasiadas sesiones abiertas"
Case mailReturnUserAbort!
ls_error = "Cancelación por usuario"
End Choose
Messagebox("Error",ls_error,Information!)
Else
mensaje_mail.Subject = 'Saludos'
mensaje_mail.notetext = 'Este mail fue enviado desde una aplicacion PB, si te interesa el codigo escribeme. Saludos'
//Aqui viene el destino, como podras ver es un arreglo,
//es decir el recipient[2] seria poner otro destino
mensaje_mail.recipient[1].address = 'achairez@lajat.com.mx'
//Aqui viene los archivos adjuntos que tambien son un arreglo,
//Se puede sacar este codigo a un boton de tal forma que se puedrian agregar tantos archivos
//como fuese necesario, habria que cuidar el contador del array del Attachmentfile
value = GetFileOpenName("Selecciona el archivo a enviar por mail",docname,named,"All","All Files (*.*),*.*")
If value = 1 Then
mensaje_archivo.filename = docname
mensaje_archivo.pathname = docname
mensaje_mail.AttachmentFile[1] = mensaje_archivo
End if
codigo_retorno = sesion_mail.mailResolveRecipient(mensaje_mail.Recipient[1].Name)
if codigo_retorno <> mailReturnSuccess! Then
messagebox("Error","No se pudo resolver la siguiente direccion "+ls_dir_mail)
else
codigo_retorno = sesion_mail.mailsend(mensaje_mail)
if codigo_retorno <> mailReturnSuccess! then
ls_error = "El mail no pudo ser enviado por: "
Choose Case codigo_retorno
Case mailReturnInsufficientMemory!
ls_error = ls_error + "Memoria insuficiente"
Case mailReturnUserAbort!
ls_error = ls_error + "Cancelado por usuario"
Case mailReturnDiskFull!
ls_error = ls_error + "Disco duro lleno"
Case mailReturnTooManySessions!
ls_error = ls_error + "Demasiadas sesiones abiertas"
Case mailReturnTooManyFiles!
ls_error = ls_error + "Demasiados archivos"
Case mailReturnTooManyRecipients!
ls_error = ls_error + "Demasiados destinatarios"
Case mailReturnUnknownRecipient!
ls_error = ls_error + "Destinatario(s) desconocido(s)"
Case mailReturnAttachmentNotFound!
ls_error = ls_error + "Archivo adjunto no hallado"
End Choose
messagebox("Error",ls_error,Information!)
end if
end if