Socket.SetSocketOption Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Socket Nastaví možnost.
Přetížení
| Name | Description |
|---|---|
| SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean) | |
| SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[]) |
Nastaví zadanou možnost na zadanou Socket hodnotu reprezentovanou jako pole bajtů. |
| SetSocketOption(SocketOptionLevel, SocketOptionName, Int32) |
Nastaví zadanou možnost na zadanou Socket celočíselnou hodnotu. |
| SetSocketOption(SocketOptionLevel, SocketOptionName, Object) |
Nastaví zadanou možnost na zadanou Socket hodnotu reprezentovanou jako objekt. |
SetSocketOption(SocketOptionLevel, SocketOptionName, Boolean)
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- 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)
Parametry
- optionLevel
- SocketOptionLevel
Jedna z SocketOptionLevel hodnot.
- optionName
- SocketOptionName
Jedna z SocketOptionName hodnot.
Výjimky
Objekt Socket byl uzavřen.
Při pokusu o přístup k soketu došlo k chybě.
Příklady
Následující příklad kódu otevře soket a povolí DontLinger možnosti soketu a soketu OutOfBandInline .
// 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);
Poznámky
Socket možnosti určují chování aktuálního Socket. Nastavte optionValue na true povolení této možnosti nebo tuto false možnost zakažte.
Socket možnosti jsou seskupené podle úrovně podpory protokolu.
Níže jsou uvedeny různé Socket možnosti, které lze nastavit pomocí tohoto přetížení. Tyto možnosti jsou seskupené podle příslušné SocketOptionLevel hodnoty. Pokud máte v úmyslu nastavit některou z těchto možností, nezapomeňte pro parametr použít odpovídající SocketOptionLevel hodnotu optionLevel . Možnost, kterou zvolíte k nastavení, musí být zadána v parametru optionName . Pokud chcete získat aktuální hodnotu některé z uvedených možností, použijte metodu GetSocketOption .
SocketOptionLevel.Socket možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.IP možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.Tcp možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.Udp možnosti, které lze nastavit pomocí tohoto přetížení.
Další informace o těchto možnostech najdete v výčtu SocketOptionName .
Poznámka:
Pokud se zobrazí SocketException výjimka, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby. Po získání tohoto kódu si přečtěte dokumentaci k chybě rozhraní API rozhraní WINDOWS Sockets verze 2 , kde najdete podrobný popis chyby.
Platí pro
SetSocketOption(SocketOptionLevel, SocketOptionName, Byte[])
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
Nastaví zadanou možnost na zadanou Socket hodnotu reprezentovanou jako pole bajtů.
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())
Parametry
- optionLevel
- SocketOptionLevel
Jedna z SocketOptionLevel hodnot.
- optionName
- SocketOptionName
Jedna z SocketOptionName hodnot.
Výjimky
Při pokusu o přístup k soketu došlo k chybě.
Ta Socket byla uzavřena.
Příklady
Následující příklad kódu nastaví hodnoty a Send hodnoty časového limituLingerOption.
// 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)
Poznámky
Socket možnosti určují chování aktuálního Socket. Toto přetížení použijte k nastavení možností Socket , které vyžadují pole bajtů jako hodnotu možnosti.
Poznámka:
Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby. Po získání tohoto kódu si přečtěte dokumentaci k chybě rozhraní API rozhraní WINDOWS Sockets verze 2 , kde najdete podrobný popis chyby.
Poznámka:
Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.
Viz také
Platí pro
SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
Nastaví zadanou možnost na zadanou Socket celočíselnou hodnotu.
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)
Parametry
- optionLevel
- SocketOptionLevel
Jedna z SocketOptionLevel hodnot.
- optionName
- SocketOptionName
Jedna z SocketOptionName hodnot.
- optionValue
- Int32
Hodnota možnosti.
Výjimky
Při pokusu o přístup k soketu došlo k chybě.
Ta Socket byla uzavřena.
Příklady
Následující příklad kódu nastaví hodnoty a Send hodnoty časového limituLingerOption.
// 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)
Poznámky
Socket možnosti určují chování aktuálního Socket. U možnosti s datovým Boolean typem zadejte nenulovou hodnotu, která tuto možnost povolí, a nulovou hodnotu, která tuto možnost zakáže. Pro možnost s celočíselnou datovým typem zadejte odpovídající hodnotu. Socket možnosti jsou seskupené podle úrovně podpory protokolu.
Níže jsou uvedeny různé Socket možnosti, které lze nastavit pomocí tohoto přetížení. Tyto možnosti jsou seskupeny podle příslušného SocketOptionLevel. Pokud máte v úmyslu nastavit některou z těchto možností, nezapomeňte použít odpovídající SocketOptionLevel parametr optionLevel . Možnost, kterou zvolíte k nastavení, musí být zadána v parametru optionName . Pokud chcete získat aktuální hodnotu některé z uvedených možností, použijte metodu GetSocketOption .
SocketOptionLevel.Socket možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.IP možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.Tcp možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.Udp možnosti, které lze nastavit pomocí tohoto přetížení.
SocketOptionLevel.IPv6 možnosti, které lze nastavit pomocí tohoto přetížení.
Další informace o těchto možnostech najdete v výčtu SocketOptionName .
Poznámka:
Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby. Po získání tohoto kódu si přečtěte dokumentaci k chybě rozhraní API rozhraní WINDOWS Sockets verze 2 , kde najdete podrobný popis chyby.
Poznámka:
Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.
Viz také
Platí pro
SetSocketOption(SocketOptionLevel, SocketOptionName, Object)
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
- Zdroj:
- Socket.cs
Nastaví zadanou možnost na zadanou Socket hodnotu reprezentovanou jako objekt.
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)
Parametry
- optionLevel
- SocketOptionLevel
Jedna z SocketOptionLevel hodnot.
- optionName
- SocketOptionName
Jedna z SocketOptionName hodnot.
- optionValue
- Object
A LingerOption nebo MulticastOption obsahující hodnotu možnosti.
Výjimky
optionValue je null.
Při pokusu o přístup k soketu došlo k chybě.
Ta Socket byla uzavřena.
Příklady
Následující příklad kódu nastaví hodnoty a Send vypršení časového limituLingerOption.
// 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)
Poznámky
Socket možnosti určují chování aktuálního Socket. Toto přetížení použijte k nastavení LingerAddMembership, a DropMembershipSocket možnosti. Pro tuto Linger možnost použijte Socket parametr optionLevel . Pro AddMembership a DropMembership, použít IP. Pokud chcete získat aktuální hodnotu některé z výše uvedených možností, použijte metodu GetSocketOption .
Poznámka:
Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby. Po získání tohoto kódu si přečtěte dokumentaci k chybě rozhraní API rozhraní WINDOWS Sockets verze 2 , kde najdete podrobný popis chyby.