[Delphi] TIdSMTP - czemu powtarza maile...

0
procedure TForm1.Wyslij;
begin
try
Zalacznik.Body.Append(Log.Text);
Zalacznik.From.Name := 'Forumularz';
Zalacznik.From.Address := ('[email protected]');
Zalacznik.Recipients.EMailAddresses := (Mail.Text);
Zalacznik.Subject := 'Dane Pana z Formularza';
//TIdAttachment.Create(Zalacznik.MessageParts,(Dziennik.Text));
Pocztex.AuthenticationType:= atLogin;
Pocztex.Username := ('login');
Pocztex.Password := ('xxxx');
Pocztex.Host := ('poczta.interia.pl');
Pocztex.Port := 25;
Pocztex.Connect;
Pocztex.Send(Zalacznik);
Pocztex.Disconnect;
Log.Clear;
Schowek.Clear;
except
Log.Clear;
Formularz.Clear;
exit;
end;
end;

Powiedzcie mi, dlaczego mi za każdym razem jak jest uruchomiony program przychodzi kilka razy ta sama treść w mailu... nie wiem co jest nie tak... dopiero po restarcie programu wysyła jednego maila, jeśli formularz wypełnie ponownie i wyślę to przychodzi też ten wcześniejszy i tak w kólko...

0

nigdy nie używałem TIdSMTP ale według mnie to powinieneś kasować treść zmiennej załącznik przed dodawaniem nowej
Jakieś Zalacznik.Clear;

procedure TForm1.Wyslij;
begin
try
Zalacznik.Clear;
Zalacznik.Body.Append(Log.Text);
...

albo chodzaż zawartość body:

procedure TForm1.Wyslij;
begin
try
Zalacznik.Body.Clear;
Zalacznik.Body.Append(Log.Text);
...

czy coś w tym rodzaju bo za każdym razem robisz append czyli dołącz do wiadomości;

0

No też mi się to nasunęło...

P.S A Ty z czego korzystasz do wysyłania e-mail`i ?

0

Niczego :)
Na razie nie miałem potrzeby wysyłania maili z programu

0

Miałeś racje, nie czyściłem załącznika... tzn dawałem clear ale na koniec kodu, na początku jak napisałeś jest OK. Dzięki! ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1