Socket.Connect Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Verbindung mit einem Remotehost her.
Überlädt
Connect(EndPoint) |
Stellt eine Verbindung mit einem Remotehost her. |
Connect(IPAddress, Int32) |
Stellt eine Verbindung mit einem Remotehost her. Der Host wird mit einer IP-Adresse und einer Portnummer angegeben. |
Connect(IPAddress[], Int32) |
Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch ein Array von IP-Adressen und eine Portnummer angegeben. |
Connect(String, Int32) |
Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch einen Hostnamen und eine Portnummer angegeben. |
Connect(EndPoint)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Stellt eine Verbindung mit einem Remotehost her.
public:
void Connect(System::Net::EndPoint ^ remoteEP);
public void Connect (System.Net.EndPoint remoteEP);
member this.Connect : System.Net.EndPoint -> unit
Public Sub Connect (remoteEP As EndPoint)
Parameter
Ausnahmen
remoteEP
ist null
.
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Ein höher in der Aufrufliste befindlicher Aufrufer verfügt nicht über die Berechtigung für den angeforderten Vorgang.
Der Socket wurde durch den Aufruf von Listen(Int32) in einem Wartezustand platziert.
Beispiele
Im folgenden Codebeispiel wird eine Verbindung mit einem Remoteendpunkt hergestellt und dann die Verbindung überprüft.
client->Connect( anEndPoint );
if ( !client->Connected )
{
Console::WriteLine( "Winsock error: {0}", Convert::ToString(
System::Runtime::InteropServices::Marshal::GetLastWin32Error() ) );
}
// This is how you can determine whether a socket is still connected.
bool blockingState = client->Blocking;
try
{
array<Byte>^tmp = gcnew array<Byte>(1);
client->Blocking = false;
client->Send( tmp, 0, static_cast<SocketFlags>(0) );
Console::WriteLine( L"Connected!" );
}
catch ( SocketException^ e )
{
// 10035 == WSAEWOULDBLOCK
if ( e->NativeErrorCode.Equals( 10035 ) )
{
Console::WriteLine( "Connected from an exception!" );
}
else
{
Console::WriteLine( "Disconnected: {0}!", e->NativeErrorCode );
}
}
finally
{
client->Blocking = blockingState;
}
Console::WriteLine( "Connected: {0}", client->Connected );
// .Connect throws an exception if unsuccessful
client.Connect(anEndPoint);
// This is how you can determine whether a socket is still connected.
bool blockingState = client.Blocking;
try
{
byte [] tmp = new byte[1];
client.Blocking = false;
client.Send(tmp, 0, 0);
Console.WriteLine("Connected!");
}
catch (SocketException e)
{
// 10035 == WSAEWOULDBLOCK
if (e.NativeErrorCode.Equals(10035))
{
Console.WriteLine("Still Connected, but the Send would block");
}
else
{
Console.WriteLine("Disconnected: error code {0}!", e.NativeErrorCode);
}
}
finally
{
client.Blocking = blockingState;
}
Console.WriteLine("Connected: {0}", client.Connected);
' .Connect throws an exception if unsuccessful
client.Connect(anEndPoint)
' This is how you can determine whether a socket is still connected.
Dim blockingState As Boolean = client.Blocking
Try
Dim tmp(0) As Byte
client.Blocking = False
client.Send(tmp, 0, 0)
Console.WriteLine("Connected!")
Catch e As SocketException
' 10035 == WSAEWOULDBLOCK
If e.NativeErrorCode.Equals(10035) Then
Console.WriteLine("Still Connected, but the Send would block")
Else
Console.WriteLine("Disconnected: error code {0}!", e.NativeErrorCode)
End If
Finally
client.Blocking = blockingState
End Try
Console.WriteLine("Connected: {0}", client.Connected)
End Sub
Hinweise
Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, stellt die Connect Methode synchron eine Netzwerkverbindung zwischen LocalEndPoint und dem angegebenen Remoteendpunkt her. Wenn Sie ein verbindungsloses Protokoll verwenden, Connect wird ein Standard-Remotehost eingerichtet. Nachdem Sie aufgerufen Connecthaben, können Sie mit Send der -Methode Daten an das Remotegerät senden oder Mit der Receive -Methode Daten vom Remotegerät empfangen.
Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, müssen Sie vor dem Senden und Empfangen von Daten nicht aufrufen Connect . Sie können und ReceiveFrom verwendenSendTo, um synchron mit einem Remotehost zu kommunizieren. Wenn Sie aufrufen Connect, werden alle Datagramme verworfen, die von einer anderen Adresse als der angegebenen Standardadresse eingehen. Wenn Sie Ihren Standard-Remotehost auf eine Broadcastadresse festlegen möchten, müssen Sie zuerst die SetSocketOption -Methode aufrufen und die Socketoption auf SocketOptionName.Broadcastfestlegen, oder Connect löst einen aus SocketException. Wenn Sie erhalten eine SocketException, verwenden die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode zu erhalten. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .
Die Connect -Methode wird blockiert, es sei denn, Sie legen die Blocking Eigenschaft false
vor dem Aufrufen Connectauf fest. Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden und die Blockierung deaktivieren, löst ein ausSocketException, Connect da die Verbindung zeit benötigt. Verbindungslose Protokolle lösen keine Ausnahme aus, da sie einfach einen Standard-Remotehost einrichten. Sie können verwenden SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 . Wenn der Fehler WSAEWOULDBLOCK zurückgegeben hat, wurde die Remotehostverbindung von einer verbindungsorientierten Socketinitiiert, aber noch nicht erfolgreich abgeschlossen. Verwenden Sie die Poll -Methode, um zu bestimmen, wann die Socket Verbindung abgeschlossen ist.
Hinweis
Wenn Sie ein verbindungsorientiertes Protokoll verwenden und vor dem Aufruf Connectnicht aufgerufen Bind haben, weist der zugrunde liegende Dienstanbieter die lokale Netzwerkadresse und die Portnummer zu. Wenn Sie ein verbindungsloses Protokoll verwenden, weist der Dienstanbieter erst dann eine lokale Netzwerkadresse und Portnummer zu, wenn Sie einen Sende- oder Empfangsvorgang abgeschlossen haben. Wenn Sie den Standard-Remotehost ändern möchten, rufen Sie erneut mit dem gewünschten Endpunkt auf Connect .
Hinweis
Wenn der Socket zuvor getrennt wurde, können Sie diese Methode nicht verwenden, um die Verbindung wiederherzustellen. Verwenden Sie eine der asynchronen BeginConnect Methoden, um die Verbindung wiederherzustellen. Dies ist eine Einschränkung des zugrunde liegenden Anbieters.
Hinweis
Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Weitere Informationen
- Send(Byte[], Int32, SocketFlags)
- SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- Receive(Byte[], Int32, SocketFlags)
- ReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint)
- LocalEndPoint
- SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- Blocking
- Poll(Int32, SelectMode)
Gilt für:
Connect(IPAddress, Int32)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Stellt eine Verbindung mit einem Remotehost her. Der Host wird mit einer IP-Adresse und einer Portnummer angegeben.
public:
void Connect(System::Net::IPAddress ^ address, int port);
public void Connect (System.Net.IPAddress address, int port);
member this.Connect : System.Net.IPAddress * int -> unit
Public Sub Connect (address As IPAddress, port As Integer)
Parameter
- address
- IPAddress
Die IP-Adresse des Remotehosts.
- port
- Int32
Die Portnummer des Remotehosts.
Ausnahmen
address
ist null
.
Die Portnummer ist ungültig.
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Diese Methode gilt für Sockets der Familie InterNetwork oder InterNetworkV6.
Die Länge von address
ist 0 (null).
Der Socket wurde durch den Aufruf von Listen(Int32) in einem Wartezustand platziert.
Beispiele
Im folgenden Codebeispiel wird eine Verbindung mit einem Remoteendpunkt hergestellt und dann die Verbindung überprüft.
// Synchronous connect using IPAddress to resolve the
// host name.
static void Connect1( String^ host, int port )
{
array<IPAddress^>^IPs = Dns::GetHostAddresses( host );
Socket^ s = gcnew Socket( AddressFamily::InterNetwork,SocketType::Stream,ProtocolType::Tcp );
Console::WriteLine( "Establishing Connection to {0}", host );
s->Connect( IPs[ 0 ], port );
Console::WriteLine( "Connection established" );
}
// Synchronous connect using IPAddress to resolve the
// host name.
public static void Connect1(string host, int port)
{
IPAddress[] IPs = Dns.GetHostAddresses(host);
Socket s = new Socket(AddressFamily.InterNetwork,
SocketType.Stream,
ProtocolType.Tcp);
Console.WriteLine("Establishing Connection to {0}",
host);
s.Connect(IPs[0], port);
Console.WriteLine("Connection established");
}
Hinweise
Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, stellt die Connect Methode synchron eine Netzwerkverbindung zwischen LocalEndPoint und dem angegebenen Remoteendpunkt her. Wenn Sie ein verbindungsloses Protokoll verwenden, Connect wird ein Standard-Remotehost eingerichtet. Nach dem Aufruf Connect können Sie mit Send der -Methode Daten an das Remotegerät senden oder mit Receive der -Methode Daten vom Remotegerät empfangen.
Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, müssen Sie vor dem Senden und Empfangen von Daten nicht aufrufen Connect . Sie können und ReceiveFrom verwendenSendTo, um synchron mit einem Remotehost zu kommunizieren. Wenn Sie Datagramme aufrufen Connect , die von einer anderen Adresse als der angegebenen Standardadresse eingehen, werden verworfen. Wenn Sie Ihren Standard-Remotehost auf eine Broadcastadresse festlegen möchten, müssen Sie zuerst die SetSocketOption -Methode aufrufen und die Socketoption auf SocketOptionName.Broadcastfestlegen, oder Connect löst einen aus SocketException. Wenn Sie erhalten eine SocketException, verwenden die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode zu erhalten. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .
Connect wird blockiert, es sei denn, Sie legen die Blocking Eigenschaft false
vor dem Aufrufen Connectvon auf fest. Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden und die Blockierung deaktivieren, löst ein ausSocketException, Connect da die Verbindung zeit benötigt. Verbindungslose Protokolle lösen keine Ausnahme aus, da sie einfach einen Standard-Remotehost einrichten. Sie können verwenden SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 . Wenn der Fehler WSAEWOULDBLOCK zurückgegeben hat, wurde die Remotehostverbindung von einer verbindungsorientierten Socketinitiiert, aber noch nicht erfolgreich abgeschlossen. Verwenden Sie die Poll -Methode, um zu bestimmen, wann die Socket Verbindung abgeschlossen ist.
Hinweis
Wenn Sie ein verbindungsorientiertes Protokoll verwenden und vor dem Aufruf Connectnicht aufgerufen Bind haben, weist der zugrunde liegende Dienstanbieter die lokale Netzwerkadresse und die Portnummer zu. Wenn Sie ein verbindungsloses Protokoll verwenden, weist der Dienstanbieter erst dann eine lokale Netzwerkadresse und Portnummer zu, wenn Sie einen Sende- oder Empfangsvorgang abgeschlossen haben. Wenn Sie den Standard-Remotehost ändern möchten, rufen Sie erneut mit dem gewünschten Endpunkt auf Connect .
Hinweis
Wenn der Socket zuvor getrennt wurde, können Sie diese Methode nicht verwenden, um die Verbindung wiederherzustellen. Verwenden Sie eine der asynchronen BeginConnect Methoden, um die Verbindung wiederherzustellen. Dies ist eine Einschränkung des zugrunde liegenden Anbieters.
Hinweis
Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Gilt für:
Connect(IPAddress[], Int32)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch ein Array von IP-Adressen und eine Portnummer angegeben.
public:
void Connect(cli::array <System::Net::IPAddress ^> ^ addresses, int port);
public void Connect (System.Net.IPAddress[] addresses, int port);
member this.Connect : System.Net.IPAddress[] * int -> unit
Public Sub Connect (addresses As IPAddress(), port As Integer)
Parameter
- addresses
- IPAddress[]
Die IP-Adressen des Remotehosts.
- port
- Int32
Die Portnummer des Remotehosts.
Ausnahmen
addresses
ist null
.
Die Portnummer ist ungültig.
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Die Steckdose befindet sich nicht in den InterNetworkInterNetworkV6 Oder-Familien.
Die Länge von address
ist 0 (null).
Der Socket wurde durch den Aufruf von Listen(Int32) in einem Wartezustand platziert.
Beispiele
Im folgenden Codebeispiel wird eine Verbindung mit einem Remoteendpunkt hergestellt und dann die Verbindung überprüft.
// Synchronous connect using Dns.ResolveToAddresses to
// resolve the host name.
static void Connect2( String^ host, int port )
{
array<IPAddress^>^IPs = Dns::GetHostAddresses( host );
Socket^ s = gcnew Socket( AddressFamily::InterNetwork,SocketType::Stream,ProtocolType::Tcp );
Console::WriteLine( "Establishing Connection to {0}", host );
s->Connect( IPs, port );
Console::WriteLine( "Connection established" );
}
// Synchronous connect using Dns.GetHostAddresses to
// resolve the host name.
public static void Connect2(string host, int port)
{
IPAddress[] IPs = Dns.GetHostAddresses(host);
Socket s = new Socket(AddressFamily.InterNetwork,
SocketType.Stream,
ProtocolType.Tcp);
Console.WriteLine("Establishing Connection to {0}",
host);
s.Connect(IPs, port);
Console.WriteLine("Connection established");
}
Hinweise
Diese Methode wird in der Regel unmittelbar nach einem Aufruf von GetHostAddressesverwendet, der mehrere IP-Adressen für einen einzelnen Host zurückgeben kann. Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, stellt die Connect Methode synchron eine Netzwerkverbindung zwischen LocalEndPoint und dem angegebenen Remoteendpunkt her. Wenn Sie ein verbindungsloses Protokoll verwenden, Connect wird ein Standard-Remotehost eingerichtet. Nach dem Aufruf Connect können Sie mit Send der -Methode Daten an das Remotegerät senden oder mit Receive der -Methode Daten vom Remotegerät empfangen.
Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, müssen Sie vor dem Senden und Empfangen von Daten nicht aufrufen Connect . Sie können und ReceiveFrom verwendenSendTo, um synchron mit einem Remotehost zu kommunizieren. Wenn Sie Datagramme aufrufen Connect , die von einer anderen Adresse als der angegebenen Standardadresse eingehen, werden verworfen. Wenn Sie Ihren Standard-Remotehost auf eine Broadcastadresse festlegen möchten, müssen Sie zuerst die SetSocketOption -Methode aufrufen und die Socketoption auf SocketOptionName.Broadcastfestlegen, oder Connect löst einen aus SocketException. Wenn Sie erhalten eine SocketException, verwenden die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode zu erhalten. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .
Connect wird blockiert, es sei denn, Sie legen die Blocking Eigenschaft false
vor dem Aufrufen Connectvon auf fest. Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden und die Blockierung deaktivieren, löst ein ausSocketException, Connect da die Verbindung zeit benötigt. Verbindungslose Protokolle lösen keine Ausnahme aus, da sie einfach einen Standard-Remotehost einrichten. Sie können verwenden SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 . Wenn der Fehler WSAEWOULDBLOCK zurückgegeben hat, wurde die Remotehostverbindung von einer verbindungsorientierten Socketinitiiert, aber noch nicht erfolgreich abgeschlossen. Verwenden Sie die Poll -Methode, um zu bestimmen, wann die Socket Verbindung abgeschlossen ist.
Hinweis
Wenn Sie ein verbindungsorientiertes Protokoll verwenden und vor dem Aufruf Connectnicht aufgerufen Bind haben, weist der zugrunde liegende Dienstanbieter die lokale Netzwerkadresse und die Portnummer zu. Wenn Sie ein verbindungsloses Protokoll verwenden, weist der Dienstanbieter erst dann eine lokale Netzwerkadresse und Portnummer zu, wenn Sie einen Sende- oder Empfangsvorgang abgeschlossen haben. Wenn Sie den Standard-Remotehost ändern möchten, rufen Sie erneut mit dem gewünschten Endpunkt auf Connect .
Hinweis
Wenn der Socket zuvor getrennt wurde, können Sie diese Methode nicht verwenden, um die Verbindung wiederherzustellen. Verwenden Sie eine der asynchronen BeginConnect Methoden, um die Verbindung wiederherzustellen. Dies ist eine Einschränkung des zugrunde liegenden Anbieters.
Hinweis
Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.
Gilt für:
Connect(String, Int32)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Stellt eine Verbindung mit einem Remotehost her. Der Host wird durch einen Hostnamen und eine Portnummer angegeben.
public:
void Connect(System::String ^ host, int port);
public void Connect (string host, int port);
member this.Connect : string * int -> unit
Public Sub Connect (host As String, port As Integer)
Parameter
- host
- String
Der Name des Remotehosts.
- port
- Int32
Die Portnummer des Remotehosts.
Ausnahmen
host
ist null
.
Die Portnummer ist ungültig.
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Die Steckdose befindet sich nicht in den InterNetworkInterNetworkV6 Oder-Familien.
Der Socket wurde durch den Aufruf von Listen(Int32) in einem Wartezustand platziert.
Beispiele
Im folgenden Codebeispiel wird eine Verbindung mit einem Remoteendpunkt hergestellt und dann die Verbindung überprüft.
// Synchronous connect using host name (resolved by the
// Connect call.)
static void Connect3( String^ host, int port )
{
Socket^ s = gcnew Socket( AddressFamily::InterNetwork,SocketType::Stream,ProtocolType::Tcp );
Console::WriteLine( "Establishing Connection to {0}", host );
s->Connect( host, port );
Console::WriteLine( "Connection established" );
}
// Synchronous connect using host name (resolved by the
// Connect call.)
public static void Connect3(string host, int port)
{
Socket s = new Socket(AddressFamily.InterNetwork,
SocketType.Stream,
ProtocolType.Tcp);
Console.WriteLine("Establishing Connection to {0}",
host);
s.Connect(host, port);
Console.WriteLine("Connection established");
}
Hinweise
Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden, stellt die Connect Methode synchron eine Netzwerkverbindung zwischen LocalEndPoint und dem angegebenen Remotehost her. Wenn Sie ein verbindungsloses Protokoll verwenden, Connect wird ein Standard-Remotehost eingerichtet. Nach dem Aufruf Connect können Sie mit Send der -Methode Daten an das Remotegerät senden oder mit Receive der -Methode Daten vom Remotegerät empfangen.
Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, müssen Sie vor dem Senden und Empfangen von Daten nicht aufrufen Connect . Sie können und ReceiveFrom verwendenSendTo, um synchron mit einem Remotehost zu kommunizieren. Wenn Sie Datagramme aufrufen Connect , die von einer anderen Adresse als der angegebenen Standardadresse eingehen, werden verworfen. Wenn Sie Ihren Standard-Remotehost auf eine Broadcastadresse festlegen möchten, müssen Sie zuerst die SetSocketOption -Methode aufrufen und die Socketoption auf SocketOptionName.Broadcastfestlegen, oder Connect löst einen aus SocketException. Wenn Sie erhalten eine SocketException, verwenden die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode zu erhalten. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 .
Die Connect -Methode wird blockiert, es sei denn, Sie legen die Blocking Eigenschaft false
vor dem Aufrufen Connectauf fest. Wenn Sie ein verbindungsorientiertes Protokoll wie TCP verwenden und die Blockierung deaktivieren, wird ein SocketException ausgelöst, Connect da es Zeit benötigt, um die Verbindung herzustellen. Verbindungslose Protokolle lösen keine Ausnahme aus, da sie einfach einen Standard-Remotehost einrichten. Sie können verwenden SocketException.ErrorCode , um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie eine ausführliche Beschreibung des Fehlers in der Dokumentation zur Windows Sockets-API, Version 2 . Wenn der Fehler WSAEWOULDBLOCK zurückgegeben hat, wurde die Remotehostverbindung von einer verbindungsorientierten Socketinitiiert, aber noch nicht erfolgreich abgeschlossen. Verwenden Sie die Poll -Methode, um zu bestimmen, wann die Socket Verbindung abgeschlossen ist.
Wenn IPv6 aktiviert ist und die Connect(String, Int32) Methode aufgerufen wird, um eine Verbindung mit einem Host herzustellen, der sowohl in IPv6- als auch in IPv4-Adressen aufgelöst wird, wird zuerst die Verbindung mit der IPv6-Adresse vor der IPv4-Adresse versucht. Dies kann dazu führen, dass die Zeit zum Herstellen der Verbindung verzögert wird, wenn der Host nicht auf die IPv6-Adresse lauscht.
Hinweis
Wenn Sie ein verbindungsorientiertes Protokoll verwenden und vor dem Aufruf Connectnicht aufgerufen Bind haben, weist der zugrunde liegende Dienstanbieter die lokale Netzwerkadresse und die Portnummer zu. Wenn Sie ein verbindungsloses Protokoll verwenden, weist der Dienstanbieter erst dann eine lokale Netzwerkadresse und Portnummer zu, wenn Sie einen Sende- oder Empfangsvorgang abgeschlossen haben. Wenn Sie den Standard-Remotehost ändern möchten, rufen Sie erneut mit dem gewünschten Endpunkt auf Connect .
Hinweis
Wenn der Socket zuvor getrennt wurde, können Sie diese Methode nicht verwenden, um die Verbindung wiederherzustellen. Verwenden Sie eine der asynchronen BeginConnect Methoden, um die Verbindung wiederherzustellen. Dies ist eine Einschränkung des zugrunde liegenden Anbieters.
Hinweis
Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.