Envoi Email

Posté par Machou43 le 7/5/2009 11:49:30
Bonjour,
J'ai un problème concernant l'envoi d'Email avec plusieurs plièces jointes. En effet, lorsque j'ai qu'une seule pière jointe, ma procédure marche trés bien et envoi le mail, par contre lorsque j'ai plusieurs fichiers joints, ca plante et je n'arrive pas a trouver pourquoi même avec l'aide.

Voici ma procédure :

//** A savoir que ma fenêtre FrmSelect... permet de récupèrer une liste de mails séparés par des ; **

PROCEDURE EnvoiMail(Ch_ListeFichiersJoints est une chaîne,Ch_SujetMail est une chaîne,Ch_TexteMail est une chaîne)
//** Déclaration des Variables **
Ent_IndiceSession est un entier
Ent_NbDestinataires est un entier
Ent_NbFichiersJoints est un entier
Ch_DateZip est une chaîne
Ch_FichierJointEnCours est une chaîne
Ch_DestinataireEnCours est une chaîne
Ch_ListeMails est une chaîne
//** Récupération des mails **
Ch_ListeMails = Ouvre(FrmSelectPersonnesMailing)
SI Ch_ListeMails = "" ALORS
Erreur("Aucun mail n'a été sélectionné !!!","","Envoi des mails annulé !!!")
RETOUR
FIN
//** On ouvre la session OUTLOOK **
Ent_IndiceSession = EmailOuvreSessionOutlook("")
//** Paramétrage des destinataires **
Ent_NbDestinataires = 0
Ch_DestinataireEnCours = ExtraitChaîne(Ch_ListeMails,1,";",DepuisDébut)
TANTQUE Ch_DestinataireEnCours <> EOT
//** Incrémentation du nb de destinataires **
Ent_NbDestinataires++
//** Mise en place du destinataire **
Email.Destinataire[Ent_NbDestinataires] = Ch_DestinataireEnCours
//** On récupère le destinataire suivant **
Ch_DestinataireEnCours = ExtraitChaîne(Ch_ListeMails,Ent_NbDestinataires + 1,";",DepuisDébut)
FIN
//** On mets en place le nombre de destinataires **
Email.NbDestinataire = Ent_NbDestinataires
//** Paramétrage des fichiers joints **
Ent_NbFichiersJoints = 0
Ch_FichierJointEnCours = ExtraitChaîne(Ch_ListeFichiersJoints,1,RC,DepuisDébut)
TANTQUE Ch_FichierJointEnCours <> EOT
//** Incrémentation du nb de fichiers joints **
Ent_NbFichiersJoints++
//** Mise en place du destinataire **
Email.Attache[Ent_NbFichiersJoints] = Ch_FichierJointEnCours
Email.NbAttache++
//** On récupère le destinataire suivant **
Ch_FichierJointEnCours = ExtraitChaîne(Ch_ListeFichiersJoints,Ent_NbFichiersJoints + 1,RC,DepuisDébut)
FIN
//** Mise en place des paramétrages globaux **
Email.Sujet = Ch_SujetMail
Email.Message = Ch_TexteMail
//** Envoi du mail **
SI EmailEnvoieMessage(Ent_IndiceSession) = Faux ALORS
Info("Erreur : " + EmailMsgErreur(Email.Erreur) + ErreurInfo(errComplet))
SINON
Info("Message envoyé à tous les destinataires...")
FIN
//** Femeture de la session mail **
EmailFermeSession(Ent_IndiceSession)

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=19&topic_id=6182&post_id=24664