FoxPro/Visual FoxPro - Emails desde FoxPro

 
Vista:
sin imagen de perfil

Emails desde FoxPro

Publicado por Delio Andres Perez (45 intervenciones) el 02/04/2011 22:18:41
Necesito una rurina prg para enviar correos desde FoxPro. gracias
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
sin imagen de perfil

Emails desde FoxPro

Publicado por Juan Manuel Cruz (512 intervenciones) el 04/04/2011 10:02:40
Sería mejor que intentes programar objetos CDOSysMail porque es una tecnología ya incorporada con cualquier IIS desde XP y no te requiere que tengas instalado Microsoft Outlook.

Hay abundante información en la red, y especialmente en PortalFox.
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
Imágen de perfil de Mauricio
Val: 471
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Emails desde FoxPro

Publicado por Mauricio (1541 intervenciones) el 02/04/2011 22:28:47
Podrias darte a la tarea de usar la opcion BUSCAR, de aca de VFP, es muy saludable y didactico
Prueba con esto

lOutlook = CREATEOBJECT("Outlook.Application") && creamos nuestro objeto de Outlook
lMail = lOutlook.CreateItem(0) && Creamos un nuevo mail
lMail.to = direccion de mail
lmail.Attachments.Add(RUTA DEL ARCHIVO ADJUNTO)
ENDIF
lMail.Subject = thisform.txt_asunto.Value
lMail.Body = "Razón social: " + ALLTRIM(csr_depart.fld_razsoc) + CHR(13) + ;
"Nombre comercial: " + ALLTRIM(fld_nomcom) + CHR(13) + CHR(13) + ;
thisform.txt_body.Value + CHR(13) + CHR(13) + ;
"LEGITRANS, S.L." + CHR(13) + ;
"GESTIÓN AMBIENTAL Y RESIDUOS" + CHR(13) + ;
"TLF: 987 259 549 FAX 987 260 115"
lMail.Send

lOutlook = .NULL.
lMail = .NULL.
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

Emails desde FoxPro

Publicado por alberto (404 intervenciones) el 04/04/2011 19:40:56
agrega esta funcion a tu prg , me la envio un colega y anda barbaro .
utiliza CDO

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
=enviaremail("TUCORREO@HOTMAIL.com","tu contraseña","panchimancuso@hotmail.com","titulo del mail","tttttttttttt","")
 
Procedure ENVIAREMAIL
LParameters EmailRemitente, Contrasena, EmailDestinatario, Titulo, Texto, ArchivosAdjuntos
 
* URL: http://www.portalfox.com/index.php?name=News&file=article&sid=2626&mode=nested&order=0&thold=0
 
  if Empty(ArchivosAdjuntos)
    Wait Window "Estoy tratando de enviar el e-mail a: " + EmailDestinatario NoWait
  else
    Wait Window "Estoy tratando de enviar el e-mail a: " + EmailDestinatario + ". Paciencia, esto puede tardar varios minutos..." NoWait
  endif
 
  Try
    Local Esquema, oCDO, oMsg, oError
    Esquema = "http://schemas.microsoft.com/cdo/configuration/"
    oCDO = CreateObject("CDO.Configuration")
    with oCDO.Fields
      do case
        case "GMAIL" $ Upper(EmailRemitente)
          .Item(Esquema + "smtpserver")       = "smtp.gmail.com"
          .Item(Esquema + "smtpserverport")   = 465
          .Item(Esquema + "sendusing")        = 2
          .Item(Esquema + "smtpauthenticate") = .T.
          .Item(Esquema + "smtpusessl")       = .T.
        case "HOTMAIL" $ Upper(EmailRemitente)
          .Item(Esquema + "smtpserver")       = "smtp.live.com"
          .Item(Esquema + "smtpserverport")   = 25
          .Item(Esquema + "sendusing")        = 2
          .Item(Esquema + "smtpauthenticate") = .T.
          .Item(Esquema + "smtpusessl")       = .T.
        case "YAHOO" $ Upper(EmailRemitente)
          .Item(Esquema + "smtpserver")       = "smtp.mail.yahoo.com"
          .Item(Esquema + "smtpserverport")   = 25
          .Item(Esquema + "sendusing")        = 2
*          .Item(Esquema + "smtpauthenticate") = .T.
*          .Item(Esquema + "smtpusessl")       = .T.
        otherwise
          Wait Window "No puedo enviar este e-mail. No conozco los parámetros necesarios del servidor de correo"
      endcase
      .Item(Esquema + "sendusername") = EmailRemitente
      .Item(Esquema + "sendpassword") = Contrasena
      .Update()
    endwith
    oMsg = CreateObject("CDO.Message")
    with oMsg
      .Configuration = oCDO
      .From          = EmailRemitente
      .To            = EmailDestinatario
      .Subject       = Titulo
      .TextBody      = Texto
      if !Empty(ArchivosAdjuntos)
        .AddAttachment(ArchivosAdjuntos)
*        .AddAttachment()     && Hay que agregar una línea AddAttachment() por cada archivo adjunto
      endif
      .Fields("urn:schemas:mailheader:disposition-notification-to") = .From
      .Fields("urn:schemas:mailheader:return-receipt-to")           = .From
      .Fields.Update
      .Send()
      Wait Window 'El e-mail con título: "' + AllTrim(Titulo) + '" fue enviado exitosamente.'
    endwith
  catch to oError
    =MessageBox("No pudo enviarse el e-mail" + Chr(13) + "Error Nº: " + Transform(oError.ErrorNo) + Chr(13) + "Mensaje: " + oError.Message)
  finally
    Release oCDO, oMsg
    oCDO = .NULL.
    oMsg = .NULL.
  endtry
 
Return
*
*
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Emails desde FoxPro

Publicado por carlos (3 intervenciones) el 31/07/2014 18:34:46
alberto:
Me podrías informar si esta rutina te funciona bajo windows 7?. Gracias
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

Emails desde FoxPro

Publicado por Ivan H (9 intervenciones) el 12/08/2014 04:10:09
Saludos Foxeros
Me parece excelente rutina, pero me esta dando el siguiente error, me podrian decir por que
OLE Idispatch exception code 0 from ?: the message could not be sent to to SMTP server. The transport error code was 0X80040217. The server response was not available
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

Emails desde FoxPro

Publicado por Carlos Contreras (1 intervención) el 16/11/2014 04:06:08
Alberto: muchisimas gracias, anda de pelicula.

Saludos/Carlos
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

Emails desde FoxPro

Publicado por Zamora (77 intervenciones) el 03/02/2012 18:26:05
Buen dia Mauricio

Estoy probando este codigo que mandaste y corre perfecto en XP Office 2k7 y Win7 64b office 2k10 no lo he probado en 32b pero si corre en 64b no creo que tenga problemas en 32b, solo tengo una pregunto como puedo agragar "CC" y "CCB"

De antemano mil gracias por el apoyo. Quedo a sus ordenes si el algo puedo ayudarles.
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

Emails desde FoxPro

Publicado por Valenfms (2 intervenciones) el 19/08/2015 18:00:03
Muchas gracias Alberto, a mí me ha servido de mucho.
Valenfms
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
sin imagen de perfil

Emails desde FoxPro

Publicado por carloscamacho (1 intervención) el 09/02/2017 16:36:04
me sirve pero algo ocurre cuando envias una y otra vez de manera seguida es decir envias el primer email ok pero si envias el segundo email despues de unos 5 segundos da un error... a que se debe eso?
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