[ FranjoZG @ 26.05.2017. 09:30 ] @
Šaljem mail-ove iz xe, koristim:
-TIdSMTP
-TIdMessage

mal-ovi imaju attachment (pdf izvješća o prometu) koji dodajem u mail:
Code:

...
IdM.Recipients.EMailAddresses := '[email protected][email protected]';
..
idm.AttachmentTempDirectory := dir;
TIdAttachmentFile.Create(Idm.MessageParts, dir);
IdS.Send(IdM);


Zanimljiva stvar koja se događa i za koju mi treba pomoč:
Mali-ove šaljem sa gmail adrese

Mailove šaljem da dvije adrese:
[email protected]
[email protected]


na gmail adresu dođe mail kako treba, sa pdf-om u attachment-u, a na @firma.hr pdf nije u attachmentu već dođe kao dio mail-a, kao da je sadržaj pdf file-a upisan u tekst sadržaja maila.
Ako mail šaljem samo na [email protected] ista priča.

Bilo koja ideja?

[ FranjoZG @ 26.05.2017. 12:59 ] @
Riješeno...
trebalo je samo dodati:
Code:

IdM.Encoding := meMime;


Međutim, nije mi jasno zašto se ponaša različito na različitim mail-ovima!
Dok je bilo:
Code:

IdM := mePlainText;

Na gmail adresi se mail ispravno primio.
[ savkic @ 26.05.2017. 14:54 ] @
> Mailove šaljem da dvije adrese:
> [email protected]
> [email protected]

> na gmail adresu dođe mail kako treba, sa pdf-om u attachment-u, a na @firma.hr pdf nije u attachmentu već
> dođe kao dio mail-a, kao da je sadržaj pdf file-a upisan u tekst sadržaja maila.
> Ako mail šaljem samo na [email protected] ista priča.

> Bilo koja ideja?

Dve,
1) koriste se razliciti mejl klijenti pa razlicito prikazu sadrzaj
2) firma.hr ima Outlook exchange (ili kako se vec zove) za mejl server i on to tumba.
[ tkaranovic @ 27.05.2017. 20:40 ] @

Ovaj nalsov nije uopste bitan za slanje mejla.

Za internet protokole postje pravila. Ta pravila su opisana u rfc tekst fajlovima.

Kad se salje fajl mora se isto formirati mejla po tim propisanim pravilima. Gmail prikazuje mejlove kako treba i kad se pogresno napravljeni.

Indy componenta ima parametre koje treba setovati da bi fajl bi po pravilima u mejlu.

Isto tako treba razlicitto tip mejla u zavisnosti od delova kojih ima u mejlu. Moze bit sa i bez plain teksta ili sa i bze html teksta.
[ Milan Milosevic @ 27.05.2017. 20:47 ] @
Kako si napravio da ti salje mailove preko gmail servera. Meni gmail blokira mailove.

evo procedure koju sam probao

Code:
 
    IdSMTP1: TIdSMTP;
    IdM: TIdMessage;
    SSL: TIdSSLIOHandlerSocketOpenSSL;

...

 SSL.SSLOptions.Method:=sslvTLSv1;
 SSL.SSLOptions.Mode:=sslmUnassigned;
 SSL.SSLOptions.VerifyMode:=[];
 SSL.SSLOptions.VerifyDepth:=0;

 IdM.From.Address := '[email protected]';
 IdM.Recipients.EMailAddresses:='[email protected]';
 IdM.Subject:='MILAN';
 IdM.Body.Text:='OVO je test' ;

 IdSMTP1.IOHandler:=SSL;
 IdSMTP1.Host:='smtp.gmail.com';
 IdSMTP1.Port:=587;
 IdSMTP1.Username:='[email protected]';
 IdSMTP1.Password:='LozinkaXXX';
 IdSMTP1.UseTLS:=utUseExplicitTLS;

 try
   IdSMTP1.Connect;
   IdSMTP1.Send(IdM);
 finally
     IdSMTP1.Disconnect();
 end;

[ savkic @ 27.05.2017. 22:35 ] @
> Kako si napravio da ti salje mailove preko gmail servera. Meni gmail blokira mailove.

Ima na gmailu neko podesavanje za tu svrhu.

Nisam odavno pokušavao, ali je pre radilo ovako (nisam siguran za Indy verziju, 9 ili 10)

Code:

  Smtp := TIdSMTP.Create(nil);
  Smtp.Port := 465;
  Smtp.Username := 'User';
  Smtp.Password := 'Pass';
  Smtp.IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(SMTP);
  Smtp.UseTLS := utUseExplicitTLS;
  Smtp.Connect;
  ...