Socket::SetSocketOption Method (SocketOptionLevel, SocketOptionName, array<Byte>^)
Sets the specified Socket option to the specified value, represented as a byte array.
Assembly: System (in System.dll)
public: void SetSocketOption( SocketOptionLevel optionLevel, SocketOptionName optionName, array<unsigned char>^ optionValue )
Parameters
- optionLevel
-
Type:
System.Net.Sockets::SocketOptionLevel
One of the SocketOptionLevel values.
- optionName
-
Type:
System.Net.Sockets::SocketOptionName
One of the SocketOptionName values.
- optionValue
-
Type:
array<System::Byte>^
An array of type Byte that represents the value of the option.
| Exception | Condition |
|---|---|
| SocketException | An error occurred when attempting to access the socket. See the Remarks section for more information. |
| ObjectDisposedException | The Socket has been closed. |
Socket options determine the behavior of the current Socket. Use this overload to set those Socket options that require a byte array as an option value.
Note |
|---|
If you receive a SocketException, use the SocketException::ErrorCode property to obtain the specific error code. After you have obtained this code, refer to the Windows Sockets version 2 API error code documentation in the MSDN library for a detailed description of the error. |
Note |
|---|
This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework. |
You must call the Bind method before using AddMembership as the optionName parameter.
The following code example sets the LingerOption and Send time-out values.
// Specifies that send operations will time-out // if confirmation is not received within 1000 milliseconds. s->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::SendTimeout, 1000 ); // 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 );
Available since 1.1
