Wiadomości e-mail wysyłane pod Indy 8 docierają z pustym ciałem

0

Zaczęło się od tego, że potrzebuję programu, który automatycznie wysyłałby wiadomość e-mail w formacie HTML wraz z załącznikiem, co planuję osiągnąć przy pomocy klas TIdSMTP i TIdMessage pakietu Indy w wersji 8.0. Jako, że e-maila z załącznikiem nie mogę wysłać po prostu jako wiadomość typu text/html bo wtedy przesyła html jako czysty tekst (z gołymi tagami i w ogóle), konieczne jest umieszczenie elementów e-maila (treść, załącznik) w kolekcji MessageParts, co próbowałem zrealizować przy pomocy poniższego kodu:

var
  txt : TIdText;
  att : TIdAttachment;
begin
  IdMessage1.ContentType := 'multipart/mixed';
  IdMessage1.MessageParts.Clear;
  IdMessage1.Body.Clear;
  IdMessage1.From.Name := 'tu nadawca';
  IdMessage1.From.Address := 'adres nadawcy';
  IdMessage1.Recipients.EMailAddresses := 'adres odbiorcy';
  IdMessage1.Subject := 'temat';
  txt := TIdText.Create(IdMessage1.MessageParts, nil);
  txt.ContentType := 'text/html';
  txt.Body.LoadFromFile('plik htm z treścią maila'); // dla txt.Body.Text := 'cośtam' jest to samo
  att := TIdAttachment.Create(IdMessage1.MessageParts, 'załącznik');
  att.ContentType := 'typ załącznika';
  att.FileName := 'nazwa załącznika';
  IdSMTP1.UserName := 'użytkownik';
  IdSMTP1.Password := 'hasło';
  IdSMTP1.Host :=  'serwer';
  IdSMTP1.Port := 587;
  IdSMTP1.AuthenticationType := atLogin;
end;

Problem polega na tym, że chociaż mail dociera do nadawcy prawidłowo i nie brakuje w nim załącznika, to z jakiegoś powodu w ogóle nie wyświetla treści, tj. nawet nie bez formatowania html ale wcale, mimo że praktycznie każdy poradnik na ten temat w necie opisywał to właśnie w ten sposób jak w powyższym kodzie, tj. umieścić treść w MessageParts jako instancję TIdText. Miał ktoś może do czynienia z tą biblioteką? Po mojemu to w tym kodzie są praktycznie wszystkie te polecenia co w każdym znalezionym na ten temat przykładzie, ale skoro maile nadal dochodzą puste to coś musi w tym TIdText brakować...

PS. Korzystam z Delphi 7.

0

Tylko @kAzek chyba będzie to umial ogarnąc. Ja dysponuje jedynie kodem z użyciem pakietu Synapse, który działa mi prawidłowo. Załączniki docierają. I na poczta.o2.pl idzie je zapisać bez problemów z e-maila.

1

Indy 8 chyba nikt na świecie nie ogarnia. Jak chcesz pomocy to zainstaluj nowe Indy (instrukcja instalacji Zainstalowanie Indy 10 na Delphi 7 PE ).

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