Envio de Email em Lote - Erro 10057

Delphi

13/04/2006

Galera,

Seguinte, estou usando o componente TNMSMTP e na hora que vou enviar meu e-mail esta dando pau.

Debuguei e ocorre na hora do envmsg.Connect

o erro é o Seguinte:

10057:Socket is not connected.

e o pior é que ele chega a enviar alguns e-mails...só depois ele trava, daí eu recomeço e vai, e trava e assim pra sempre

O que pode Ser?

Abraços a Todos


Tremonti

Tremonti

Curtidas 0

Respostas

Tremonti

Tremonti

13/04/2006

Alguem?!


GOSTEI 0
Tremonti

Tremonti

13/04/2006

Opa,

Abaixo segue meu codigo fonte para o envio dos e-mails

var
Env : integer;
Nome : String;
begin
qry.Close;
qry.Open;
lblContato.Caption := IntToStr( qry.RecordCount );
lblEnv.Caption := ´0´;
Env := 0;

if envmsg.Connected then
envmsg.Disconnect;

while not qry.Eof do
Begin

envmsg.PostMessage.FromAddress := ´´;
envmsg.PostMessage.Subject := ´´;
envmsg.PostMessage.Date := ´´;
envmsg.PostMessage.ToAddress.Clear;
envmsg.PostMessage.Body.Clear;
envmsg.PostMessage.ToBlindCarbonCopy.Clear;
Nome := ´´;

envmsg.PostMessage.FromAddress := ´meuenderecodeemailcorreto´;
envmsg.PostMessage.Subject := ´-- Assunto --´;
envmsg.PostMessage.Date := DateToStr(Date);
envmsg.PostMessage.ToAddress.Add(qryEmail.AsString);

Nome := Copy(qryNmCli.AsString , 1 , pos(´ ´ , qryNmCli.AsString)-1 );

if Trim(Nome) = ´´ Then
Nome := ´Cliente´;

envmsg.PostMessage.Body.Add(´Sr.(a) ´ + Nome + ´ ,´);
envmsg.PostMessage.Body.add(Memo1.Lines.Text);

envmsg.Connect;

if envmsg.Connected Then
Begin
envmsg.SendMail;
qry.Edit;
qryDtResult.AsDateTime := Date;
qryResultado.AsString := ´EM´;
qryCdFuncResult.AsString := ´0093´;
qry.ApplyUpdates;
Memo2.Lines.Add( qryNmCli.AsString + ´ - ´ + qryEmail.AsString );
Env := Env + 1;
End;

if envmsg.Connected Then
envmsg.Disconnect;
lblEnv.Caption := IntToStr(Env);
lblEnv.Update;
qry.Next;
end;


Aguardo respostas

Abraços


GOSTEI 0
Tremonti

Tremonti

13/04/2006

Alguem aí?!


GOSTEI 0
POSTAR