See Also

Dns Class  | Dns Members

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

Language

Visual Basic

C#

C++

C++/CLI

Show All

mailAddress
The email address to resolve.
See Also Languages PowerTCP SSL Sockets for .NET

GetMailHosts Method

Dart.PowerTCP.SslSockets Namespace > Dns Class : GetMailHosts Method

Get the mail server (or servers) responsible for receiving mail for a given email address.

[Visual Basic]
<DescriptionAttribute("Perform a synchronous mail address/host to address resolution.")> Public Function GetMailHosts( _    ByVal mailAddress As String _ ) As IPHostEntry()
[C#]
[DescriptionAttribute("Perform a synchronous mail address/host to address resolution.")] public IPHostEntry[] GetMailHosts(    string mailAddress );
[C++]
[DescriptionAttribute("Perform a synchronous mail address/host to address resolution.")] public: IPHostEntry*[]* GetMailHosts(    string* mailAddress )
[C++/CLI]
[DescriptionAttribute("Perform a synchronous mail address/host to address resolution.")] public: array<IPHostEntry^>^ GetMailHosts(    String^ mailAddress )

Parameters

mailAddress
The email address to resolve.

Return Type

An array of System.Net.IPHostEntry object representing the mail server(s) responsible for receiving mail for a given email address.

Exceptions

ExceptionDescription
SocketExceptionNo DNS server was specified.

Remarks

This method returns the mail server for the provided domain or email address. The result of the query may include multiple mail servers. If more than one is found, the most preferred server is first in the list and the least preferred is at the end of the list.

The Dns.GetMailHosts method may return an empty collection. This could mean one of the following:

To resolve a host name or a dot address, use GetHost. To resolve an email address asynchronously, use BeginGetMailHosts.

Example

The following example demonstrates resolving an email address.

[Visual Basic] 

Private Sub ResolveTest()
   Dns1.Server = "206.64.128.5"
   Dim results = Dns1.GetMailHosts("gates@microsoft.com")

   'Iterate through all IPHostEntry objects
   Dim result As System.Net.IPHostEntry
   For Each result In results
      DisplayResult(result)
   Next
End Sub

Private Sub DisplayResult(ByVal result As System.Net.IPHostEntry)
   ' Display host name
   Debug.WriteLine("Host name: " + result.HostName)

   ' Display addresses, if any
   Dim add As System.Net.IPAddress
   For Each add In result.AddressList
      Debug.WriteLine("Address: " + add.ToString())
   Next

   ' Display aliases, if any
   Dim s As String
   For Each s In result.Aliases
      Debug.WriteLine("Aliases: " + s)
   Next
End Sub

[C#] 


private void ResolveTest()
{
  dns1.Server =
"206.64.128.5";
  System.Net.IPHostEntry[] results = dns1.GetMailHosts(
"gates@microsoft.com");
           
  
// Iterate through all IPHostEntry objects
  
foreach(System.Net.IPHostEntry result in results)
     DisplayResult(result);
}

private void DisplayResult(System.Net.IPHostEntry result)
{
  
// Display host name
  
Debug.WriteLine("Host name: " + result.HostName);

  
// Display addresses, if any
  
foreach(System.Net.IPAddress add in result.AddressList)
     Debug.WriteLine(
"Address: " + add.ToString());

  
// Display aliases, if any
  
foreach(string s in result.Aliases)
     Debug.WriteLine(
"Aliases: " + s);
}
                

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

Dns Class  | Dns Members


Send comments on this topic.

Documentation version 1.1.2.0.

© 2008 Dart Communications.  All rights reserved.