SmtpClient.TestRecipients Method

Tests an e-mail address.

[Visual Basic]
Public Sub TestRecipients( _
    server As SmtpServer, _
    mail As SmtpMail _
public void TestRecipients(
    SmtpServer server,
    SmtpMail mail
public: void TestRecipients(
    SmtpServer^ server,
    SmtpMail^ mail
public function TestRecipients( 
    server : SmtpServer, 
    mail : SmtpMail


A SmtpServer instances used to test.
A SmtpMail instance to test.


How does it work? Firstly, SmtpClient performs a DNS MX record query. If it retrieves the recipient's local SMTP server successfully, SmtpClient will try to connect to this server. SmtpClient then performs "RCPT TO" command to test if this SMTP server accept this email address. 

Please always pass null (Nothing in Visual Basic) to SmtpServer paramter except you want to test whether an email address will be accepted by a specified SMTP server.


[Visual Basic, C#, C++] To get the full samples of EASendMail, please refer to Samples section.

[VB - Test Email Address]

Imports EASendMail

Sub TestEmailAddress()

    Dim oMail As SmtpMail = New SmtpMail("TryIt")
    oMail.From = New MailAddress("")
    oMail.To.Add(New MailAddress(""))

    Dim oSmtp As SmtpClient = New SmtpClient
    oSmtp.TestRecipients(Nothing, oMail)

Catch exp As Exception
    Console.WriteLine("Exception: {0}", exp.Message)
End Try

End Sub

[C# - Test Email Address] using System; using EASendMail; void TestEmailAddress() { try { SmtpMail oMail = new SmtpMail("TryIt"); oMail.From = new MailAddress(""); oMail.To.Add(new MailAddress("")); SmtpClient oSmtp = new SmtpClient(); oSmtp.TestRecipients(null, oMail); Console.WriteLine("PASS"); } catch (Exception exp) { Console.WriteLine("Exception: {0}", exp.Message); } }
[C++/CLI - Test Email Address] using namespace System; using namespace EASendMail; void TestEmailAddress() { try { SmtpMail ^oMail = gcnew SmtpMail("TryIt"); oMail->From = gcnew MailAddress(""); oMail->To->Add(gcnew MailAddress("")); SmtpClient ^oSmtp = gcnew SmtpClient(); oSmtp->TestRecipients(nullptr, oMail); Console::WriteLine("PASS"); } catch (Exception ^exp) { Console::WriteLine("Exception: {0}", exp->Message); } }

Test Email Address

See Also

Bulk Email Sender Guidelines
Process Bounced Email (Non-Delivery Report) and Email Tracking