Socket.SetSocketOption 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.
Legt eine Socket-Option fest.
Überlädt
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean) |
Legt die angegebene Socket-Option auf den angegebenen Boolean-Wert fest. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[]) |
Legt die angegebene Socket-Option auf den angegebenen, als Bytearray dargestellten Wert fest. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32) |
Legt die angegebene Socket-Option auf den angegebenen ganzzahligen Wert fest. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Object) |
Legt die angegebene Socket-Option auf den angegebenen, als Objekt dargestellten Wert fest. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, bool optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, bool optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * bool -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Boolean)
Parameter
- optionLevel
- SocketOptionLevel
Einer der SocketOptionLevel-Werte.
- optionName
- SocketOptionName
Einer der SocketOptionName-Werte.
Ausnahmen
Das Socket-Objekt wurde geschlossen.
Fehler beim Versuch, auf den Socket zuzugreifen.
Beispiele
Im folgenden Codebeispiel wird ein Socket geöffnet und die DontLinger
Socketoptionen und OutOfBandInline
aktiviert.
// Establish the local endpoint for the socket.
IPHostEntry^ ipHost = Dns::GetHostEntry( Dns::GetHostName() );
IPAddress^ ipAddr = ipHost->AddressList[ 0 ];
IPEndPoint^ ipEndPoint = gcnew IPEndPoint( ipAddr,11000 );
// Create a TCP socket.
Socket^ client = gcnew Socket( AddressFamily::InterNetwork,SocketType::Stream,ProtocolType::Tcp );
// Connect the socket to the remote endpoint.
client->Connect( ipEndPoint );
// Set option that allows socket to close gracefully without lingering.
client->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::DontLinger, true );
// Set option that allows socket to receive out-of-band information in the data stream.
client->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::OutOfBandInline, true );
// Establish the local endpoint for the socket.
IPHostEntry ipHost = Dns.GetHostEntry(Dns.GetHostName());
IPAddress ipAddr = ipHost.AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, 11000);
// Create a TCP socket.
Socket client = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
// Connect the socket to the remote endpoint.
client.Connect(ipEndPoint);
// Set option that allows socket to close gracefully without lingering.
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.DontLinger, true);
// Set option that allows socket to receive out-of-band information in the data stream.
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.OutOfBandInline, true);
Hinweise
Socket -Optionen bestimmen das Verhalten des aktuellen Socket. Legen Sie optionValue
auf fest true
, um die Option zu aktivieren oder die false
Option zu deaktivieren.
Socket Die Optionen sind nach der Ebene der Protokollunterstützung gruppiert.
Nachfolgend sind die verschiedenen Socket Optionen aufgeführt, die mithilfe dieser Überladung festgelegt werden können. Diese Optionen werden nach dem entsprechenden SocketOptionLevel Wert gruppiert. Wenn Sie eine dieser Optionen festlegen möchten, stellen Sie sicher, dass Sie den entsprechenden SocketOptionLevel Wert für den optionLevel
Parameter verwenden. Die option, die Sie festlegen möchten, muss im optionName
Parameter angegeben werden. Wenn Sie den aktuellen Wert einer der aufgeführten Optionen abrufen möchten, verwenden Sie die GetSocketOption -Methode.
SocketOptionLevel.Socket Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.IP Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.Tcp Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.Udp Optionen, die mithilfe dieser Überladung festgelegt werden können.
Weitere Informationen zu diesen Optionen finden Sie in der SocketOptionName Enumeration.
Hinweis
Wenn Sie eine SocketException Ausnahme erhalten, verwenden Sie die SocketException.ErrorCode -Eigenschaft, 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 .
Gilt für:
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Legt die angegebene Socket-Option auf den angegebenen, als Bytearray dargestellten Wert fest.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, cli::array <System::Byte> ^ optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, byte[] optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * byte[] -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Byte())
Parameter
- optionLevel
- SocketOptionLevel
Einer der SocketOptionLevel-Werte.
- optionName
- SocketOptionName
Einer der SocketOptionName-Werte.
Ausnahmen
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Beispiele
Im folgenden Codebeispiel werden die LingerOption Timeout- und Send -Werte festgelegt.
// Specifies that the Socket will linger for 10 seconds after Close is called.
LingerOption^ lingerOption = gcnew LingerOption(true, 10);
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::Linger, lingerOption);
// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)
Hinweise
Socket -Optionen bestimmen das Verhalten des aktuellen Socket. Verwenden Sie diese Überladung, um die Socket Optionen festzulegen, die ein Bytearray als Optionswert erfordern.
Hinweis
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 .
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
Gilt für:
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Legt die angegebene Socket-Option auf den angegebenen ganzzahligen Wert fest.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, int optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, int optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * int -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Integer)
Parameter
- optionLevel
- SocketOptionLevel
Einer der SocketOptionLevel-Werte.
- optionName
- SocketOptionName
Einer der SocketOptionName-Werte.
- optionValue
- Int32
Ein Wert der Option.
Ausnahmen
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Beispiele
Im folgenden Codebeispiel werden die LingerOption Timeout- und Send -Werte festgelegt.
// Specifies that send operations will time-out
// if confirmation is not received within 1000 milliseconds.
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::SendTimeout, 1000);
// Send operations will time-out if confirmation
// is not received within 1000 milliseconds.
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000);
'Send operations will time-out if confirmation is
' not received within 1000 milliseconds.
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendTimeout, 1000)
Hinweise
Socket -Optionen bestimmen das Verhalten des aktuellen Socket. Geben Sie für eine Option mit einem Boolean Datentyp einen Wert ohne Zero an, um die Option zu aktivieren, und einen Nullwert, um die Option zu deaktivieren. Geben Sie für eine Option mit einem ganzzahligen Datentyp den entsprechenden Wert an. Socket Die Optionen sind nach der Ebene der Protokollunterstützung gruppiert.
Nachfolgend sind die verschiedenen Socket Optionen aufgeführt, die mithilfe dieser Überladung festgelegt werden können. Diese Optionen werden nach den entsprechenden SocketOptionLevelgruppiert. Wenn Sie eine dieser Optionen festlegen möchten, stellen Sie sicher, dass Sie die entsprechende SocketOptionLevel für den optionLevel
Parameter verwenden. Die option, die Sie festlegen möchten, muss im optionName
Parameter angegeben werden. Wenn Sie den aktuellen Wert einer der aufgeführten Optionen abrufen möchten, verwenden Sie die GetSocketOption -Methode.
SocketOptionLevel.Socket Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.IP Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.Tcp Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.Udp Optionen, die mithilfe dieser Überladung festgelegt werden können.
SocketOptionLevel.IPv6 Optionen, die mithilfe dieser Überladung festgelegt werden können.
Weitere Informationen zu diesen Optionen finden Sie in der SocketOptionName Enumeration.
Hinweis
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 .
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
Gilt für:
SetSocketOption(SocketOptionLevel, SocketOptionName, Object)
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
- Quelle:
- Socket.cs
Legt die angegebene Socket-Option auf den angegebenen, als Objekt dargestellten Wert fest.
public:
void SetSocketOption(System::Net::Sockets::SocketOptionLevel optionLevel, System::Net::Sockets::SocketOptionName optionName, System::Object ^ optionValue);
public void SetSocketOption (System.Net.Sockets.SocketOptionLevel optionLevel, System.Net.Sockets.SocketOptionName optionName, object optionValue);
member this.SetSocketOption : System.Net.Sockets.SocketOptionLevel * System.Net.Sockets.SocketOptionName * obj -> unit
Public Sub SetSocketOption (optionLevel As SocketOptionLevel, optionName As SocketOptionName, optionValue As Object)
Parameter
- optionLevel
- SocketOptionLevel
Einer der SocketOptionLevel-Werte.
- optionName
- SocketOptionName
Einer der SocketOptionName-Werte.
- optionValue
- Object
Eine LingerOption oder MulticastOption mit dem Wert der Option.
Ausnahmen
optionValue
ist null
.
Fehler beim Versuch, auf den Socket zuzugreifen.
Der Socket wurde geschlossen.
Beispiele
Im folgenden Codebeispiel werden die LingerOption Timeout- und Send -Werte festgelegt.
// Specifies that the Socket will linger for 10 seconds after Close is called.
LingerOption^ lingerOption = gcnew LingerOption(true, 10);
s->SetSocketOption(SocketOptionLevel::Socket, SocketOptionName::Linger, lingerOption);
// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)
Hinweise
Socket -Optionen bestimmen das Verhalten des aktuellen Socket. Verwenden Sie diese Überladung, um die LingerOptionen , AddMembershipund DropMembershipSocket festzulegen. Verwenden Sie für die Linger Option für den optionLevel
Parameter.Socket Verwenden Sie IPfür AddMembership und DropMembership. Wenn Sie den aktuellen Wert einer der oben aufgeführten Optionen abrufen möchten, verwenden Sie die GetSocketOption -Methode.
Hinweis
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 .