次の方法で共有


TcpClient.ExclusiveAddressUse プロパティ

定義

TcpClient で 1 つのクライアントだけがポートを使用できるかどうかを指定する Boolean 値を取得または設定します。

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

プロパティ値

TcpClient で、1 つのクライアントだけが特定のポートを使用できる場合は true。それ以外の場合は false。 既定値は、Windows Server 2003 および Windows XP Service Pack 2 以降では true で、その他のすべてのバージョンでは false です。

例外

基になるソケットへのアクセスを試みているときにエラーが発生しました。

基になる Socket は閉じられています。

次のコード例では、 TcpClient を作成し、 プロパティの ExclusiveAddressUse 値を取得および設定します。

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);
}

注釈

既定では、複数のクライアントで特定のポートを使用できます。ただし、ポートに送信されるネットワーク トラフィックに対して操作を実行できるのは、クライアントの 1 つだけです。 プロパティを ExclusiveAddressUse 使用すると、複数のクライアントが特定のポートを使用できないようにすることができます。

基になるソケットがクライアント ポートにバインドされる前に、このプロパティを設定する必要があります。 、BeginConnect、、または TcpClient(String, Int32)を呼び出Connectすと、クライアント ポートは メソッドの副作用としてバインドされ、その後プロパティをExclusiveAddressUseTcpClient(IPEndPoint)設定することはできません。

適用対象