Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Como enviar Gmail con las nuevas limitaciones de Google (https://www.clubdelphi.com/foros/showthread.php?t=95672)

adrall 03-05-2022 16:29:14

Como enviar Gmail con las nuevas limitaciones de Google
 
Buenos dias,

Parece que Google va a limitar el acceso a lo que llaman "aplicaciones menos seguras" a partir del 30 de Mayo próximo, con lo que parece que no se podran enviar correos usando smtp.gmail.com desde Delphi. Teneis alguna información al respecto, o de como solucionar esta situación ???

Muchas gracias

chenech 03-05-2022 19:26:49

En C++ Builder envio GMail
 
Por lo que leí en Google, se desactivará por defecto ese día el acceso a aplicaciones no seguras pero puede volver a la configuración y volver a activarla, aunque no lo recomienda, entiendo que seguirá funcionando si se activa de nuevo esa opción en la configuración de la cuenta.
Yo he comprobado que se me siguen enviando los mail desde GMail, estos días, incluyendo hoy, uso el puerto 465 y se envía sin problema.
Te adjunto el código en C++, si por aquí hay alguien que lo pueda convertir en Delphi, ya que yo no me entero mucho de Pascal.

Código:

        IdSMTP1->IOHandler = IdSSLIOHandlerSocketOpenSSL1;
        IdSMTP1->UseTLS = utUseImplicitTLS;
        IdSMTP1->Host = _D("smtp.gmail.com");
        IdSMTP1->Port = 465;
        IdSMTP1->Username = _D("Usuario@gmail.com");
        IdSMTP1->Password = _D("password");
        IdSMTP1->AuthType = satDefault;
        std::auto_ptr<TIdMessage> IdMessage1(new TIdMessage(NULL));
        IdMessage1->Priority = mpHigh;
        IdMessage1->Recipients->Add()->Address = "destinatario@maildeprueba.com";
        IdMessage1->Subject = "Asunto";
        IdMessage1->Encoding = meMIME;
        IdMessage1->ContentType = _D("multipart/mixed");
        IdMessage1->CharSet = _D("UTF-8");
        IdMessage1->From->Address = _D("Usuario@gmail.com");
        IdMessage1->From->Name = "Usario que envia";
        TIdText *text = new TIdText(IdMessage1->MessageParts, NULL);
        text->Body->Text = "Cuerpo del mensaje";
        text->ContentType = _D("text/plain");
        text->CharSet = _D("utf-8");
        IdSMTP1->Connect();
        IdSMTP1->Send(IdMessage1.get());
        IdSMTP1->Disconnect();


adrall 05-05-2022 13:06:37

Si, a mi por ahora me funciona correctamente, veremos que pasa a partir del dia 30 pués, según entendí, va a desaparecer la opción 'Activar aplicaciones menos seguras' y de ahí mi preocupación.

Muchas gracias por tu respuesta.

P.D.

El código és practicamente calcado al de Delphi.

hugobenitez 18-05-2022 14:11:39

Cual seria la alternativa que podrian usar si es que sucede ese limite apartir del 30 de mayo 2022? Alguien podria dar una idea para ayudarnos? Gracias

adrall 20-05-2022 13:25:13

Mirate estos enlaces

https://en.delphipraxis.net/topic/19...h-20-via-indy/

https://github.com/geoffsmith82/GmailAuthSMTP

Yo he estado trabajando con la demo de Github y funciona perfectamente pero aun no he conseguido implementarlo en un proyecto mio.

Saludos

Zento 02-06-2022 18:00:37

Hay dos hilos tratando el mismo asunto, me parece. No tengo permisos para enlazar, así que pongo el mismo texto:
Dos clientes que envían vía Gmail mediante SMTP han dejado de poder hoy. Única solución por ahora, activar 2FA y crear una contraseña específica de aplicación. Pero me parece que esto es pan para hoy y hambre para mañana y tendremos que acabar implementando OAuth2.


La franja horaria es GMT +2. Ahora son las 10:13:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi