Hola invitado         02 Sep, 2010 - 04:41
Menú principal
 
Ads
 
Patrocinadores
 
Anuncios
 
© 2009 PortalFox
Envío de correo electrónico por el servidor SMTP de Gmail lecturas 32752
 Enviado por LuisMaria en Viernes, 27 Abril, 2007
Internet Este artículo muestra como enviar un correo electrónico desde Visual FoxPro a través del servidor SMTP de Gmail que utiliza autentificación y cifrado SSL (Secure Sockets Layer).

Envío de correo electrónico por el servidor SMTP de Gmail

Luis María Guayán Por Luis María Guayán, Tucumán, Argentina


Gmail permite el envio de correo electrónico utilizando: el servidor smpt.gmail.com, autentificación, cifrado, puerto 465 ó 587, dirección de correo electrónico, nombre de usuario (incluido @gmail.com) y contraseña. (Para mas información de configuración haga clic aquí).

Craig Boyd publicó hace un tiempo en su Blog, varios artículos sobre distintas técnicas para el envio de mails desde VFP. Una de esas técnicas es mediante CDO (Collaboration Data Objects) que nos permite autenficación y cifrado SSL. Tomando como base su artículo "Email and VFP: Part 1c (CDOSYS)", solo se debe cambiar el puerto SMTP a 465 ó 587, y poner a .T. las propiedadades smtpauthenticate y smtpusessl.

El siguiente es el código modificado que nos permite el envió de correo electrónico a través del servidor SMTP de Gmail.

TRY
  LOCAL lcSchema, loConfig, loMsg, loError, lcErr
  lcErr = ""
  lcSchema = "http://schemas.microsoft.com/cdo/configuration/"
  loConfig = CREATEOBJECT("CDO.Configuration")
  WITH loConfig.FIELDS
    .ITEM(lcSchema + "smtpserver") = "smtp.gmail.com"
    .ITEM(lcSchema + "smtpserverport") = 465 && ó 587
    .ITEM(lcSchema + "sendusing") = 2
    .ITEM(lcSchema + "smtpauthenticate") = .T. 
    .ITEM(lcSchema + "smtpusessl") = .T.
    .ITEM(lcSchema + "sendusername") = "usuario@gmail.com"
    .ITEM(lcSchema + "sendpassword") = "contraseña"
    .UPDATE
  ENDWITH
  loMsg = CREATEOBJECT ("CDO.Message")
  WITH loMsg
    .Configuration = loConfig
    .FROM = "usuario@gmail.com"
    .TO = "usuario@hotmail.com"
    .Subject = "Prueba desde Gmail"
    .TextBody = "Este es un mensaje de prueba con CDO con " + ;
      "autenticación y cifrado SSL desde Gmail"
    .Send()
  ENDWITH
CATCH TO loError
  lcErr = [Error: ] + STR(loError.ERRORNO) + CHR(13) + ;
    [Linea: ] + STR(loError.LINENO) + CHR(13) + ;
    [Mensaje: ] + loError.MESSAGE
FINALLY
  RELEASE loConfig, loMsg
  STORE .NULL. TO loConfig, loMsg
  IF EMPTY(lcErr)
    MESSAGEBOX("El mensaje se envió con éxito", 64, "Aviso")
  ELSE
    MESSAGEBOX(lcErr, 16 , "Error")
  ENDIF
ENDTRY

Este código funciona también para las cuentas de correo electrónico brindadas por Google Apps.

Hasta la próxima,

Luis María


 Versión imprimible  
Envío de correo electrónico por el servidor SMTP de Gmail | Entrar/Crear una cuenta | 14 Comentarios
Los comentarios son propiedad de sus respectivos autores.
No somos responsables de su contenido.

Re: Envío de correo electrónico por el servidor SMTP de Gmail


por jucorant en 28 Abr, 2007 - 09:43
(Información del usuario  | Enviar un mensaje http://)
Fantastico, esto venia buscando....Gracias

Re: Envío de correo electrónico por el servidor SMTP de Gmail


por ScorpioFX en 04 May, 2007 - 04:51
(Información del usuario  | Enviar un mensaje http://)
Buen artículo Luis María. Soy programador aficionado autodidacta, me interesa agregar esta funcion en un proyecto, pero al probarlo me sale un error, explico, lo que hice fue copiar y pegar el codigo en un prg, cambie los datos personales por los mios (correo, clave de acceso), como destinatario puse un correo alterno mio, tambien habilité la opcion de POP en gmail. Al ejecutar me sale:

Error 1429
Linea 24
Codigo de excepcion OLE IDispatch 0 de ?. No se puede enviar el mensaje al servidor SMTP. Codigo del error de transporte 0X80040217. Respuesta del servidor fue Not Available

Espero me puedas ayudar a resolver mi problema. De antemano, Gracias!

  • Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por ScorpioFX en 04 May, 2007 - 04:54
    (Información del usuario | Enviar un mensajehttp://
    YA LO RESOLVI!, pero gracias de todos modos por tus grandes aportaciones, he aprendido mucho leyendo tus artículos.

    [ No se permiten comentarios a los usuarios anónimos. Por favor, Inicia tu cuenta o registrate ]

    • Re: Envío de correo electrónico por el servidor SMTP de Gmail


      por lautaromeneses en 28 Ago, 2008 - 03:18
      (Información del usuario | Enviar un mensaje


      Estoy bastante atrasado, pero tengo ese mismo problema ahora, error de transporte
      en la conexion al servidor.

      Podrias ayudarme plis ??

      [ No se permiten comentarios a los usuarios anónimos. Por favor, Inicia tu cuenta o registrate ]

  • Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por jose.ramos en 03 Mar, 2010 - 12:31
    (Información del usuario | Enviar un mensaje
    Yo tambien tengo tu problema y no se como resolverlo he configurado las cuentas pas a paso y me sigue saliendo este error

    [ No se permiten comentarios a los usuarios anónimos. Por favor, Inicia tu cuenta o registrate ]

  • Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por danydelgiudice en 12 Jun, 2007 - 11:44
    (Información del usuario  | Enviar un mensaje http://)
    Hola Luis María: soy de Santiago del Estero y tu artículo me ha solucionado un gran problema, gracias. Me falta algo y espero me puedas ayudar: quiero enviar pedidos a proveedores via correo electrónico. Calculo que debo generar un archivo html, pero cómo hago para que ese archivo lo tome el correo que genero a través de CDOSYS?

    Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por aprendiz-100 en 26 Nov, 2007 - 09:10
    (Información del usuario  | Enviar un mensaje 
    muchas gracias excelente programa, por favor si me indicas como le hago para adjuntar archivos.

    gracias de antemano

  • Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por DHGR (dariohgr@hotmail.com) en 03 Feb, 2009 - 03:47
    (Información del usuario | Enviar un mensaje
    HOLA QUERIA SABER SI LLEGASTE A ENVIAR EMAIL DESDE VFP SEGUN EL EJEMPLO.

    DARIO

    [ No se permiten comentarios a los usuarios anónimos. Por favor, Inicia tu cuenta o registrate ]

  • Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por crgruber72 en 02 Jul, 2009 - 04:46
    (Información del usuario  | Enviar un mensaje 
    Sr. Luis estoy tratando de implementar su rutina, pero me da error de código de transporte, el mismo error del compañero. Sería tan amable de ayudarme a solucionar este error por favor. Gracias

    Re: Envío de correo electrónico por el servidor SMTP que no sea gmail


    por joe90 en 16 Nov, 2009 - 04:32
    (Información del usuario  | Enviar un mensaje 
    Sr. Luis, muchas gracias por el aoprte que hace a la causa de fox.
    La rutina para gmail he logrado hacerla funcionar, pero para otro tipo de servicio que no sea gmail me da error de código de transporte.
    El puerto que utilizo es el mismo que de outlookexpess.
    Ud. me podria indicar como se puede solucionar este problema.
    Gracias.

    Saludos

    Jose Murua

    Re: Envío de correo electrónico por el servidor SMTP de Gmail


    por jose.ramos en 03 Mar, 2010 - 12:37
    (Información del usuario  | Enviar un mensaje 
    Yo tengo tambien el problema "The Transport failed to conect to the server a pesar que configure la cuenta de correo según tu link de tu articulo. Por favor deseo soucionar este problema.




    Todas las marcas y los logos utilizados en este sitio son propiedad de sus respectivos dueños.
    Los artículos, noticias y comentarios son propiedad y responsabilidad de sus respectivos autores.
    Copyright © 2000-2010 PortalFox. Todos los derechos reservados.