Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Autenticacion de Google Mail (https://www.clubdelphi.com/foros/showthread.php?t=59919)

Emilio_82 12-09-2008 21:41:29

Autenticacion de Google Mail
 
Hola,

Tengo una aplicacion en la que quiero enviar mails. (NO HACER SPAM) Sino enviar mail a proveedores. Lo que quiero es que no pase a traves de outlook sino que de la misma aplicacion los envie.

Uso en el Form un TIdSMTP y TIdMessage de Indi. Y para enviar tengo el siguiente código.

Código Delphi [-]
procedure TForm_EnviarXMail.Btn_EnviarClick(Sender: TObject);
var
Mail: Variant;
ArchivoAdjunto: boolean;
begin

  StatusMemo.Clear;

  //setup SMTP
  SMTP.Host := Host;
  SMTP.Port := 465;

  //setup mail message
  MailMessage.From.Address := From;
  MailMessage.Recipients.EMailAddresses := E_Para.Text;  //+ ',' + ledCC.Text;

  MailMessage.Subject := E_Asunto.Text;
  MailMessage.Body.Text := E_Cuerpo.Text;

  if FileExists(ledAttachment.Text) then
    TIdAttachment.Create(MailMessage.MessageParts, ledAttachment.Text);

  //send mail
  try
    try
      SMTP.Connect(1000);
      SMTP.Send(MailMessage);
    except on E:Exception do
      StatusMemo.Lines.Insert(0, 'ERROR: ' + E.Message);
    end;
  finally
    if SMTP.Connected then SMTP.Disconnect;
  end;

Enviado:= True;
end;

Obviamente lo tome de un ejemplo. las variables están bien cargadas.
Pasa que google como casi todos los servidores necesitan autenticación.

¿Como autentico sin usar outlook?

Gracias desde ya por las respuestas.

AzidRain 12-09-2008 21:59:26

Te falta poner algo en las propiedades user y password de SMTP. Así como lo pusiste SMTP.Connect siempre te genera una excepción pues no indicas ni usuario ni contraseña.

Emilio_82 12-09-2008 23:15:14

Gracias por avisarme Pero Ahora se Cuelga directamente
 
Le agregue las lineas

Código Delphi [-]
  SMTP.Username:=From;
  SMTP.Password:=Pwd;

antes de

Código Delphi [-]
  SMTP.Connect(1000);

Cuando probe verificar en las cuentas si habia enviado no llego nada.

¿Que puede estar fallando?

AzidRain 12-09-2008 23:23:29

tienes que activar el acceso POP (que es el que usa indy) en GMail para que te permita entrar, por defecto utiliza IMAP.

Emilio_82 12-09-2008 23:44:50

Gracias MAN - Ahora me tira este Error:ERROR: 5.7.0 Must issue a STARTTLS command
 
Ya debo caer pesado, pero configure todo y me tira los sig.

EIDProtocolReplyError:
ERROR: 5.7.0 Must issue a STARTTLS command first. 4sm14204246yxq.9

El AuthenticatioType los puse en atLogin

Outgoing Mail (SMTP) Server - requires TLS:

smtp.gmail.com (use authentication)
Use Authentication: Yes
Use STARTTLS: Yes (some clients call this SSL)
Port: 465 or 587

JXJ 13-09-2008 19:58:09

emilio_82

prueba con el demo que hizo roman


http://www.clubdelphi.com/foros/show...ighlight=gmail

para acceder a gmail necesitas usar ssl.


La franja horaria es GMT +2. Ahora son las 01:01:49.

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