FoxPro/Visual FoxPro - Enviar correo por MS Outlook

   
Vista:

Enviar correo por MS Outlook

Publicado por Gilberto (14 intervenciones) el 03/06/2010 17:03:15
Buen dia compañeros de la Web, tengo un inconveniente al enviar correos a traves de Microsoft Outlook 2003 y 2007.

Estoy usando el comando "Outlook.Aplication", funciona muy bien para enviar correos a traves de Microsoft Outlook, el problema es que me los envia de inmediato, realice una pantallita para poder colocarle asunto, archivos adjuntos y todo lo demas, el problema que tengo es que cuando coloco mas de una dirección me arroja error porque me manda todo el texto como una sola dirección, como puedo hacer para enviar un correo a varios detinatarios sin que arroje error, de lo contrario me tocaria uno po uno, el codigo es el siguiente:

Local lcperfil As Character, lccontrasenia As Character , ;
lcdestinatario As Character, lctema As Character , ;
lccuerpo As Character, lcarjunto As Character

Local looutlook As "Outlook.Application", ;
lonamespace As Object, lomailitem As Object

#Define lf_cr Chr(10)+Chr(13)

*-- Datos del Mail
lcperfil = "Outlook"
lccontrasenia = "outlook"

lcdestinatario = Alltrim(Thisform.txtpara.Value) &&& *** Aca es donde tengo el problema cuando coloco mas de una direccion separada por punto y coma ****

lctema = Alltrim(Thisform.txtasunto.Value)

lccuerpo = Thisform.txtcuerpo.Value

*-- Creo objetos Outlook y NameSpace

strpath="archivo adjunto.doc"
looutlook = Createobject("Outlook.Application")
lonamespace = looutlook.getnamespace("MAPI")

*-- Ejecuto los métodos
lonamespace.logon(lcperfil , lccontrasenia)
lomailitem = looutlook.createitem(0)
lomailitem.recipients.Add(lcdestinatario) &&&& ***** para aplicar aca las direcciones
lomailitem.attachments.Add(strpath)
lomailitem.subject = lctema
lomailitem.body = lccuerpo
lomailitem.Send
lonamespace.logoff

lonamespace = .Null.
looutlook = .Null.

Nota: No me pidan que use el MAPI de Outlook Express no funciona para MS Outlook, que si puedo detener el correo, o si saben como mostrarlo antes de darle enviar.

Gracias

GILBERTO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Enviar correo por MS Outlook

Publicado por Ana (15 intervenciones) el 04/06/2010 23:50:00
Debes insertar uno a uno los destinatarios, no todos juntos. Se creará un arreglo por cada destinatario.

Por ejemplo: Si los tienes en una tabla destinos.dbf con el campo e_mail que tiene los correos de los destinatarios.

sele destino
scan
scatter memvar
loMailItem.Recipients.ADD(m.e_mail)
endscan

Para que no se envíen automáticamente debes DESHABILITAR en OUTLOOK la opción:
Herramientas/Opciones/Configuración de Correo/Enviar inmediatamente durante la conexión.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Enviar correo por MS Outlook

Publicado por carlos cjuarezr@gmail.com (3 intervenciones) el 24/04/2011 17:53:58
repite esta linea cuantas destinatarios tengas, es decir, no concatenes a tus destinatarios, sino
agregalo n veces

lomailitem.recipients.Add(lcdestinatario)

osea :

lomailitem.recipients.Add(lcdestinatario1)
lomailitem.recipients.Add(lcdestinatario2)
lomailitem.recipients.Add(lcdestinatario3)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Enviar correo por MS Outlook

Publicado por michael (45 intervenciones) el 07/06/2010 18:58:49
puedes insertar varios correos al mismo tiempo
solo separalos por punto y coma

correo1@hotmail.com ; correo2@hotmail.com

y considerando las observaciones de ANA

saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar