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:

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;
Merci d'avance pour votre aide!

Edit: Il fallait tout simplement laisser Indy se charger du content-type.