Click here to Skip to main content
15,893,722 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
VB
Protected Sub SendMail_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles SendMail.Click

        Try
            Dim SmtpServer As New SmtpClient()
            Dim mail As New MailMessage()
            SmtpServer.Credentials = New  _
Net.NetworkCredential("fiona@gmail.com", "donkeyboat")
            SmtpServer.Port = 587
            SmtpServer.Host = "smtp.gmail.com"
            SmtpServer.EnableSsl = True
            mail = New MailMessage()
            mail.From = New MailAddress("fiona@gmail.com")
            mail.To.Add("fionatyl@hotmail.com")
            mail.Subject = "Test Mail"
            mail.IsBodyHtml = True
            mail.Body = "This is for testing SMTP mail from GMAIL"

            SmtpServer.Send(mail)
            MsgBox("Mail Send")
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub

Above is my current code. I would like to do changes for the line to send the mail to. right now i can only send it to one recipient. how do i edit it so that i can send it to many other recipients separated with ';' ?
urgent help is needed. thank you
Posted
Updated 14-Jun-12 10:40am
v2

The MailMessage.To property returns a MailMessageCollection as explained here http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.to[^].

The Add method of MailMessageCollection accepts a string of mail addresses separated by comma character as explained here http://msdn.microsoft.com/en-us/library/ms144695.aspx[^]

Hence, to send mail to multiple mail addresses use Add method of To property of MailMessage object with the Addresses in a string separated by , as shown below

VB
mail.To.Add("add1@hotmail.com,add2@hotmail.com,add3@hotmail.com")
 
Share this answer
 
Comments
Manas Bhardwaj 15-Jun-12 7:30am    
5ed!
VJ Reddy 15-Jun-12 7:34am    
Thank you, Manas :)
Espen Harlinn 23-Jun-12 4:07am    
5'ed! :-D
VJ Reddy 23-Jun-12 8:10am    
Thank you, Espen :)
Try this:

C#
string addresses = "abc@123.com;def@123.com;ghi@123.com";
foreach(string address in addresses.split(';'))
  mail.To.Add(address)
 
Share this answer
 
Comments
Maciej Los 14-Jun-12 17:52pm    
Good answer, my 5!
VJ Reddy 14-Jun-12 20:35pm    
The answer is good.
But Add method accepts comma separated addresses string as shown in answer, which is succinct I think.
VJ Reddy 14-Jun-12 20:30pm    
Good answer. 5!
But Add method accepts comma separated addresses string as shown in answer.
Manas Bhardwaj 15-Jun-12 7:31am    
5ed!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900