Błąd w wyświetlaniu wysłanego maila

0

Witam społeczność,
Mam napisaną aplikację, która importuje co zadany czas pliki xml do systemu ERP. Gdy nie może zaimportować jakiegoś pliku, to wysyła maila z informacją. Niestety, co jakiś czas maile dochodzą, ale program pocztowy nie może ich poprawnie wyświetlić, a dokładnie nic nie wyświetla, mimo że w źródle wszystko jest. Po restarcie aplikacji, wszystko wraca do normy. Wysyłka przy pomocy komponentów Indy. Co może być przyczyną?
Kod wysyłania wiadomości:

          IdMessage1.Recipients.EMailAddresses := '[email protected]';
          IdMessage1.Body.Text := 'Niestety, nie można zaimportować zamówienia ' + ExtractFileName(FileList.Strings[i]) + '. Problem z towarem o symbolu: ' + MainNode.ChildNodes[0].ChildNodes[j].ChildNodes[1].ChildNodes[0].Text;
          IdMessage1.Subject := 'Niepowodzenie importu';
          IdSMTP1.Connect;
          IdSMTP1.Send(IdMessage1);
          IdSMTP1.Disconnect;
          IdMessage1.MessageParts.Clear;
          IdMessage1.Subject := Edit13.Text;
          IdMessage1.Body.Text := Memo1.Lines.Text;

0

Spróbuj każdorazowo przed wysłaniem w TIdMessage wywołać metodę Clear ewentualnie ClearBody i / lub ClearHeader oczywiście po tym musisz wszytko poustawiać.

3
kAzek napisał(a):

Spróbuj każdorazowo przed wysłaniem w TIdMessage wywołać metodę Clear ewentualnie ClearBody i / lub ClearHeader oczywiście po tym musisz wszytko poustawiać.

A nie lepiej zrobić to dobrze (he, he) i tworzyć niezbędne obiekty, wysłać maila i zniszczyć utworzone obiekty?
I tak w kółko.
Pewnie, że lepiej 😉

PS.
Zawsze twierdziłem, że te wizualne używanie (bo na pewnie nie jest to programowanie obiektowe) obiektów niewizualnych jest o kant kuli rozbić...

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