Boa tarde Eduardo,

Implementei isso recentemente num sistema meu. Abaixo uma procedure
que peguei do ACBrRNfe e adaptei algumas coisaspara fazer isso. Como o
Gmail usa conexão segura, é necessário algumas DLLs para o envio
funcionar adequadamente, estas DLLs tem no ACBr e são elas:
libeay32.dll, libssl32.dll e ssleay32.dll.

uso: EnviarEmailNovo('smtp.gmail.com',
                                     '465',
                                     'em...@gmail.com',
                                     '123456',
                                     'em...@gmail.com',
                                     'paraq...@dominio.com',
                                     'paraque...@dominio.com',
                                     'Assunto: ',
                                     'anexo.pdf',
                                     '',
                                     'Corpo do e-mail', True);


procedure EnviarEmail(const sSmtpHost,
                                sSmtpPort,
                                sSmtpUser,
                                sSmtpPasswd,
                                sFrom,
                                sTo,
                                sCC,
                                sAssunto,
                                sAttachment,
                                sAttachment2: String;
                                sMensagem : TStrings; SSL : Boolean);
var
 smtp: TSMTPSend;
 msg_lines: TStringList;
 m:TMimemess;
 p: TMimepart;
begin
 try
    m:=TMimemess.create;
    p := m.AddPartMultipart('mixed', nil);
    if sMensagem <> nil then
       m.AddPartText(sMensagem, p);
    if sAttachment <> '' then
      m.AddPartBinaryFromFile(sAttachment, p);
    if sAttachment2 <> '' then
      m.AddPartBinaryFromFile(sAttachment2, p);
    m.header.tolist.add(sTo);
    if sCC <> '' then
       m.header.tolist.add(sCC);

    m.header.From := sFrom;
    m.header.subject:=sAssunto;
    m.EncodeMessage;

    msg_lines := TStringList.Create;
    smtp := TSMTPSend.Create;
    msg_lines.Add(m.Lines.Text);

    smtp.UserName := sSmtpUser;
    smtp.Password := sSmtpPasswd;

    smtp.TargetHost := sSmtpHost;
    smtp.TargetPort := sSmtpPort;

    smtp.FullSSL := SSL;
    smtp.AutoTLS := SSL;
    if not smtp.Login() then
      raise Exception.Create('SMTP ERROR: Login:' + smtp.EnhCodeString);

    if not smtp.MailFrom(sFrom, Length(sFrom)) then
      raise Exception.Create('SMTP ERROR: MailFrom:' + smtp.EnhCodeString);
    if not smtp.MailTo(sTo) then
      raise Exception.Create('SMTP ERROR: MailTo:' + smtp.EnhCodeString);
    if not smtp.MailData(msg_lines) then
      raise Exception.Create('SMTP ERROR: MailData:' + smtp.EnhCodeString);

    if not smtp.Logout() then
      raise Exception.Create('SMTP ERROR: Logout:' + smtp.EnhCodeString);
 finally
    msg_lines.Free;
    smtp.Free;
    m.free;
 end;
end;

[]s
Andrei





2010/7/23 Eduardo Suruagy <eduardosuru...@gmail.com>:
> Boa tarde,
>
> Alguem consegue enviar e-mail pelo delphi 7 com uma conta do GMail??? Se
> alguem souber como fazer por favor me expliquem, pois, já tentei de tudo e
> não consigo
>
>
> Obrigado pela atenção....
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
> --
> <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
>
>
>

Responder a