TcpClient.ExclusiveAddressUse Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
public:
property bool ExclusiveAddressUse { bool get(); void set(bool value); };
public bool ExclusiveAddressUse { get; set; }
member this.ExclusiveAddressUse : bool with get, set
Public Property ExclusiveAddressUse As Boolean
Property Value
true
if the TcpClient allows only one client to use a specific port; otherwise, false
. The default is true
for Windows Server 2003 and Windows XP Service Pack 2 and later, and false
for all other versions.
Exceptions
An error occurred when attempting to access the underlying socket.
The underlying Socket has been closed.
Examples
The following code example creates a TcpClient and gets and sets the value of the ExclusiveAddressUse
property.
static void GetSetExclusiveAddressUse( TcpClient^ t )
{
// Don't allow another process to bind to this port.
t->ExclusiveAddressUse = true;
Console::WriteLine( "ExclusiveAddressUse value is {0}", t->ExclusiveAddressUse.ToString() );
;
}
static void GetSetExclusiveAddressUse()
{
// Don't allow another process to bind to this port.
t.ExclusiveAddressUse = true;
Console.WriteLine("ExclusiveAddressUse value is {0}",
t.ExclusiveAddressUse);
}
Remarks
By default, multiple clients can use a specific port; however, only one of the clients can perform operations on the network traffic sent to the port. You can use the ExclusiveAddressUse
property to prevent multiple clients from using a specific port.
This property must be set before the underlying socket is bound to a client port. If you call Connect, BeginConnect, TcpClient(IPEndPoint), or TcpClient(String, Int32), the client port is bound as a side effect of the method, and you cannot subsequently set the ExclusiveAddressUse
property.