Socket.Connected プロパティ
Socket がリモート ホストに接続されているかどうかを示す値を取得します。
Public ReadOnly Property Connected As Boolean
[C#]
public bool Connected {get;}
[C++]
public: __property bool get_Connected();
[JScript]
public function get Connected() : Boolean;
プロパティ値
最後に実行された操作の時点で、 Socket がリモート リソースに接続されていた場合は true 。それ以外の場合は false 。
解説
Connected プロパティは、I/O 操作が最後に実行された時点での Socket の接続状態を取得します。 false を返した場合、 Socket は一度も接続されていないか、接続が切断されています。
Connected プロパティは最後に実行された操作の時点における接続状態を反映するだけなので、接続先のソケットが現在も接続されているかどうかを確認するには、メッセージの送受信を試行する必要があります。このプロパティは、メッセージの送信が一度失敗すると、それ以後 true を返さなくなります。この動作は設計に基づくものです。いずれにせよ、接続状態をテストをするための完全な方法はありません。接続は、テストを実行してから実際に送受信が行われるまでの間に失われる可能性もあるからです。したがって開発者は、ソケットが接続されているものと仮定したうえでコードを記述し、送信が失敗した場合のエラー処理を適切に実装する必要があります。
使用例
[Visual Basic, C#, C++] リモート エンドポイントに接続し、接続を検証する例を次に示します。
aSocket.Connect(anEndPoint)
If Not aSocket.Connected Then
Console.WriteLine("Winsock error: " _
+ Convert.ToString(System.Runtime.InteropServices.Marshal.GetLastWin32Error()))
End If
[C#]
aSocket.Connect(anEndPoint);
if (!aSocket.Connected) {
Console.WriteLine("Winsock error: "
+ Convert.ToString(System.Runtime.InteropServices.Marshal.GetLastWin32Error()));
}
[C++]
aSocket->Connect(anEndPoint);
if (!aSocket->Connected) {
Console::WriteLine(S"Winsock error: {0}", Convert::ToString(System::Runtime::InteropServices::Marshal::GetLastWin32Error()));
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard