Bonjour,
Je teste la récupération de mail via les composants Indy d'une part sous Delphi 6 / Indy 8.0.25 et d'autre part sous Delphi 2009 / Indy 10.2.5 (dans le cadre d'une migration)
J'utilise dans le cas delphi 6 le projet de demo livré avec Indy => maildemo et dans le cas delphi 9 le projet demo téléchargé sur le site indy dans la rubrique consacrée aux demo de la version 10.
Après chargement dans les 2 IDE, le source est quasiment identique.
Pour le test j'utilise un mail "hello world" depuis thunderbird. Le relevé des entêtes de message marche bien dans les 2 cas par contre lorsque j'essaye de lire le corps du message ça ne fonctionne pas du tout dans le cas delphi 2009 / Indy 10.
Je pense avoir identifié le problème, il vient de la ligne :
for intIndex := 0 to Pred(Msg.MessageParts.Count) do
Elle démarre une boucle qui, pour le message en cours de traitement détermine les parties du message.
Dans le cas Indy 8 le msg.messageparts.count retourne bien 1 par contre en Indy 10 il retourne toujours 0 (dans le cas simple de mon hello world qui ne contient qu'une partie)
Même code, même mail mais 2 versions du composant Indy.
Quelqu'un a-t-il été confronté à ce problème ? J'ai pas trouvé de solution sur le net à cette heure-ci.
Merci d'avance
Partager