Envoyer des mails avec plusieurs adresses emails [Résolu]

cs_aus3004 319 Messages postés jeudi 1 avril 2010Date d'inscription 16 mars 2011 Dernière intervention - 28 juil. 2010 à 22:24 - Dernière réponse : cs_aus3004 319 Messages postés jeudi 1 avril 2010Date d'inscription 16 mars 2011 Dernière intervention
- 29 juil. 2010 à 17:33
Bonjour à tous j'éspère que vous développez toujours aussi bien

J'ai un petit problème :
J'aimerais envoyer un mail à plusieurs adresses emails en même temps.
Pour cela j'ai crée une listbox qui comporte toutes les adresses emails.
J'ai ensuite mis ce code :
Dim z As Integer, supp As Integer, lesitems As String
        For z = 0 To (ListBox2.Items.Count - 1)
            lesitems = lesitems & ListBox2.Items.Item(z) & ","
            supp = supp + 1
        Next
        Dim addr() As String = Split(lesitems, ",")
        Dim i As Byte
        For i = 0 To addr.Length - 1
            mail.To.Add(addr(i))
        Next


Et cela ne marche pas j'ai un msg qui me dit que le paramettre addresses ne peut pas être une chaine vide.

Evidemment pour créer le code ci-dessus j'ai passé 3h et c'est ce que j'ai trouvé de mieux donc si c'est n'importe quoi c'est tout à fait normal ;)

Merci pour votre aide

A+
Ma LV2 c'est le Visual Basic, et toi ?
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 29 juil. 2010 à 13:50
3
Merci
Essaye de cette façon pour voir ?

For Each Item As String In ListBox2.Items
    mail.To.Add(New Net.MailAdress(Item))
Next


C'est étrange car la fonction est pourtant surchargé String, téhoriquement on peut lui refiler une adresse texte...

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.

Merci Mayzz 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 85 internautes ce mois-ci

Commenter la réponse de Mayzz
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 28 juil. 2010 à 23:44
0
Merci
Ah ben tiens, lol

Pourquoi deux boucles ?

For i = 0 To (ListBox2.Items.Count - 1)
    mail.To.Add(ListBox2.Items(i).ToString)
Next


Autre chose :

Et cela ne marche pas j'ai un msg qui me dit que le paramettre addresses ne peut pas être une chaine vide.


Le paramètre adresse ? Et non le paramètre 'To' ?


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
cs_aus3004 319 Messages postés jeudi 1 avril 2010Date d'inscription 16 mars 2011 Dernière intervention - 29 juil. 2010 à 08:35
0
Merci
Salut salut,

J'ai mis deux boucles parce que j'ai l'impression que
For i = 0 To addr.Length - 1
            mail.To.Add(addr(i))
        Next

ne peut pas fonctionner tout le seul si on ne renseigne pas plus.

Peut être qu'une seule fonctionne mais faudrait ajouter un petit quelque chose...

Le message d'erreur est claire :
le paramettre addresses ne peut pas être une chaine vide.


Ca me fais marrer (et plaisir) que tu m'aide avec ce code car une fois résolu il servira à terminer un programme qui t'es destiné

Ma LV2 c'est le Visual Basic, et toi ?
Commenter la réponse de cs_aus3004
Mayzz 2859 Messages postés mardi 15 avril 2003Date d'inscription 26 novembre 2013 Dernière intervention - 29 juil. 2010 à 13:38
0
Merci
Ah bon lol, un cadeau, j'aime bien =)

Pour le projet :

A mon avis il s'agit d'un élément vide dans le listbox, fait un check en mettant des points d'ârret sur la boucle, normalement si j'ai raison, le problème survient en fin de boucle. Tu peux aussi (plus simple) cliquer plus bas que le dernier élément de ta liste pour voir s'il en existe un vide.

Voila, tiens moi au ju.

PS: j'ai bien lu ton dernier MP mais j'ai pas vraiment eu le temps de répondre.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Commenter la réponse de Mayzz
cs_aus3004 319 Messages postés jeudi 1 avril 2010Date d'inscription 16 mars 2011 Dernière intervention - 29 juil. 2010 à 13:46
0
Merci
Ouai j'ai testé en mettant des points d'arrêt et ca bug toujours ici
mail.To.Add(addr(i))


Les items de la listbox ne sont pas vide car j'ai mis un compteur d'item qui n'affiche pas 0.
Moi je pense qu'il sagit d'un problème de code qui foire la récupération des emails et leurs "déplacement" dans mail.To.Add(addr(i)).

Tu pense pas qu'y a un code tout con qui puisse remplacer le mien ?

A+

Ma LV2 c'est le Visual Basic, et toi ?
Commenter la réponse de cs_aus3004
cs_aus3004 319 Messages postés jeudi 1 avril 2010Date d'inscription 16 mars 2011 Dernière intervention - 29 juil. 2010 à 17:33
0
Merci
 For Each Item As String In ListBox2.Items
            mail.To.Add(New Net.Mail.MailAddress(Item))
        Next


Merci ca marche très bien
Maintenant le cadeau est terminé mais faut que tu répondes à mon mail pour l'avoir.

hé hé ...


Ma LV2 c'est le Visual Basic, et toi ?
Commenter la réponse de cs_aus3004

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.