Dns::Resolve Method (String^)
Resolves a DNS host name or IP address to an IPHostEntry instance.
Assembly: System (in System.dll)
public: [ObsoleteAttribute("Resolve is obsoleted for this type, please use GetHostEntry instead. http://go.microsoft.com/fwlink/?linkid=14202")] static IPHostEntry^ Resolve( String^ hostName )
Parameters
- hostName
-
Type:
System::String^
A DNS-style host name or IP address.
Return Value
Type: System.Net::IPHostEntry^An IPHostEntry instance that contains address information about the host specified in hostName.
| Exception | Condition |
|---|---|
| ArgumentNullException | hostName is null. |
| ArgumentOutOfRangeException | The length of hostName is greater than 255 characters. |
| SocketException | An error is encountered when resolving hostName. |
The Resolve method queries a DNS server for the IP address associated with a host name or IP address.
When hostName is a DNS-style host name associated with multiple IP addresses, only the first IP address that resolves to that host name is returned.
If the Ipv6Element::Enabled property is set to true, the Aliases property of the IPHostEntry instance returned is not populated by this method and will always be empty.
Note |
|---|
This member emits trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework. |
The following example uses the Resolve method to resolve an IP address to an IPHostEntry instance.
try { IPHostEntry^ hostInfo = Dns::Resolve( hostString ); // Get the IP address list that resolves to the host names contained in the // Alias property. array<IPAddress^>^address = hostInfo->AddressList; // Get the alias names of the addresses in the IP address list. array<String^>^alias = hostInfo->Aliases; Console::WriteLine( "Host name : {0}", hostInfo->HostName ); Console::WriteLine( "\nAliases : " ); for ( int index = 0; index < alias->Length; index++ ) { Console::WriteLine( alias[ index ] ); } Console::WriteLine( "\nIP Address list :" ); for ( int index = 0; index < address->Length; index++ ) { Console::WriteLine( address[ index ] ); } } catch ( SocketException^ e ) { Console::WriteLine( "SocketException caught!!!" ); Console::WriteLine( "Source : {0}", e->Source ); Console::WriteLine( "Message : {0}", e->Message ); } catch ( ArgumentNullException^ e ) { Console::WriteLine( "ArgumentNullException caught!!!" ); Console::WriteLine( "Source : {0}", e->Source ); Console::WriteLine( "Message : {0}", e->Message ); } catch ( NullReferenceException^ e ) { Console::WriteLine( "NullReferenceException caught!!!" ); Console::WriteLine( "Source : {0}", e->Source ); Console::WriteLine( "Message : {0}", e->Message ); } catch ( Exception^ e ) { Console::WriteLine( "Exception caught!!!" ); Console::WriteLine( "Source : {0}", e->Source ); Console::WriteLine( "Message : {0}", e->Message ); }
for accessing DNS information. Associated enumeration: PermissionState::Unrestricted
Available since 1.1
