envoyer une pièce jointe (pdf) avec le composant Tidmessage (delphi 10.4.2)
Bonjour,
J'arrive a envoyer un mail format text avec avec le composant TidMessage.
Ce que je n'arrive pas à faire c'est trouver la bonne syntaxe pour ajouter une pièce jointe (format pdf ou texte par exemple)
J'ai cru comprendre qu'il fallait créé le messageparts :
Code:
TIdAttachment.Create(IdMessage1.MessageParts)
Mais après ?
J'ai essayé plusieurs syntaxes de add ou de loadfromfile mais j'ai toujours une erreur ...
Le code est tout simple mais je n'y arrive pas ...
Merci d'avance pour vos lumières
Je précise que j'ai potassé l'excellent tutoriel de Gilles Vasseur https://gilles-vasseur.developpez.co...-robin/#LVII-B, mais la pièce jointe n'est pas abordé pour le SMTP
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| procedure TForm1.Button2Click(Sender: TObject);
var
tpj: tidattachment;
begin
//Efface l'entête et le corps du message
IdMessage1.Clear;
//Adresse email de l'expediteur
IdMessage1.From.Text :=Edit1.Text;
//Adresse email où le destinataire pourra répondre
IdMessage1.ReplyTo.EMailAddresses:=Edit1.Text;
//Adresse email du destinataire
IdMessage1.Recipients.EMailAddresses:=Edit2.Text;
//Date de l'envoi du message
IdMessage1.Date:=Date;
//Sujet du message
IdMessage1.Subject:=Edit4.Text;
//Priorité du message
IdMessage1.Priority:=mpNormal;
//Corps du message
IdMessage1.Body.Assign(Memo1.Lines);
// si un fichier attaché est mentionné
if Edit3.Text<>'') then
//Attache le fichier
begin
tpj:=TIdAttachment.Create(IdMessage1.MessageParts);
tpj.LoadFromFile(edit3.text); //----------> ne fonctionne pas :o( cela me renvoie une "erreur abstraite"
end;
//Connexion au serveur smtp
IdSMTP1.AuthType:=satDefault;
IdSMTP1.Host:='smtp.**********';
IdSMTP1.Port:=***;
IdSMTP1.UserName:='********';
IdSMTP1.Password:='*********';
IdSMTP1.Connect;
try
IdSMTP1.Send(IdMessage1);
finally
IdSMTP1.Disconnect;
end;
end; |