Então, estou utilizando um script para enviar e-mails para multiplos destinários pelo Delphi.
Segue o código-fonte:
var
// objetos necessários para o funcionamento
IdSSLIOHandlerSocket: TIdSSLIOHandlerSocket;
IdSMTP: TIdSMTP;
IdMessage: TIdMessage;
CaminhoAnexo: string;
begin
// instanciação dos objetos
IdSSLIOHandlerSocket := TIdSSLIOHandlerSocket.Create(Self);
IdSMTP := TIdSMTP.Create(Self);
IdMessage := TIdMessage.Create(Self);
try
// Configuração do SSL
IdSSLIOHandlerSocket.SSLOptions.Method := sslvSSLv23;
IdSSLIOHandlerSocket.SSLOptions.Mode := sslmClient;
// Configuração do SMTP
IdSMTP.IOHandler := IdSSLIOHandlerSocket;
IdSMTP.AuthenticationType := atLogin;
IdSMTP.Port := 465;
IdSMTP.Host := 'smtp.gmail.com';
IdSMTP.Username := 'usuario';
IdSMTP.Password := 'senha';
// Tentativa de conexão e autenticação
try
IdSMTP.Connect;
IdSMTP.Authenticate;
except
on E:Exception do
begin
MessageDlg('Erro na conexão e/ou autenticação: ' +
E.Message, mtWarning, [mbOK], 0);
Exit;
end;
end;
// Configuração da mensagem
IdMessage.From.Address := '[email protected]';
IdMessage.From.Name := 'Meu Nome';
IdMessage.ReplyTo.EMailAddresses := IdMessage.From.Address;
IdMessage.Recipients.EMailAddresses := '[email protected]';
IdMessage.Subject := 'Assunto do e-mail';
IdMessage.Body.Text := 'Corpo do e-mail';
// Anexo da mensagem (opcional)
CaminhoAnexo := 'C:\Anexo.txt';
if FileExists(CaminhoAnexo) then
TIdAttachment.Create(IdMessage.MessageParts, CaminhoAnexo);
// Envio da mensagem
try
IdSMTP.Send(IdMessage);
MessageDlg('Mensagem enviada com sucesso.', mtInformation, [mbOK], 0);
except
On E:Exception do
MessageDlg('Erro ao enviar a mensagem: ' +
E.Message, mtWarning, [mbOK], 0);
end;
finally
// liberação dos objetos da memória
FreeAndNil(IdMessage);
FreeAndNil(IdSSLIOHandlerSocket);
FreeAndNil(IdSMTP);
end;
end;
Até ai tudo bem, o envio vai perfeitamente para minha caixa de entrada, porém quando envio para vários destinários ao mesmo tempo á minha aplicação trava.
Queria saber como para minha aplicação autenticar o envio conforme enviado para o destinário com um delay de 3 segundos para envio de cada mensagem, por por exemplo:
Pergunta
Kali
Olá amigos da Scripbrasil.
Então, estou utilizando um script para enviar e-mails para multiplos destinários pelo Delphi.
Segue o código-fonte:
Até ai tudo bem, o envio vai perfeitamente para minha caixa de entrada, porém quando envio para vários destinários ao mesmo tempo á minha aplicação trava.
Queria saber como para minha aplicação autenticar o envio conforme enviado para o destinário com um delay de 3 segundos para envio de cada mensagem, por por exemplo:
Enviado e-mail para : [email protected] - OK!
Delay (3) segundos.
Enviado e-mail para : [email protected] - OK!
Delay (3) segundos.
Enviado e-mail para : [email protected] - OK!
Delay (3) segundos.
Envio de e-mail market completo, você já pode fechar á aplicação.
Com base nesse script em perl.
Abraços, espero que alguém me ajude!!
Link para o comentário
Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.