Bonjour,
j'utilise Indy pour envoyer des messages depuis Delphi avec pièce jointe mais j'ai quelques problèmes pour lire les pièces jointes que j'envoie :
Avec Gmail, je reçois la pièce jointe en double alors que Outlook ne détecte même pas de pièce jointe...
Je suis donc sûr que la pièce jointe est bien envoyé donc est-ce un problème au niveau de la syntaxe du message?
Voici le code que j'utilise pour envoyer un mail:
Merci d'avance pour votre aide!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 IdMessage := TIdMessage.Create(nil); IdSMTP := TIdSMTP.Create(nil) ; IdMessage.From.Address := Aaddr_From; IdMessage.Recipients.Add.Address := Aaddr_To; IdMessage.Subject := ASubject; IdMessage.ContentType := 'multipart/alternative'; if not AText_Only then begin with TIdText.Create(IdMessage.MessageParts) Do begin ContentType := 'text/plain'; Body.Insert(0, RS_Message); end; end; with TIdText.Create(IdMessage.MessageParts,ASL_Message) do begin if AText_Only then ContentType := 'text/plain' else ContentType := 'text/html'; end; if ASL_Attachement <> nil then for i := 0 to ASL_Attachement.Count-1 do TIdAttachmentFile.Create(IdMessage.MessageParts,ASL_Attachement[i]); IdSMTP.Port := APort; IdSMTP.Host := AHost; if APassword <> '' then begin idSMTP.Password := APassword; idSMTP.Username := AUserName; end; IdSMTP.Connect; IdSMTP.Send(IdMessage); IdSMTP.Disconnect;
Edit: Il fallait tout simplement laisser Indy se charger du content-type.
Partager