C# アプリケーションで telnet を使用して TeamSpeak 3 サーバーに接続しようとしています。
ちなみに、私は telnet の使用経験があまりありません^^' ので、サイト https://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient(VS. 80).aspx
次のコードは次のようにする必要があります。
- チームピーク サーバーに接続する
- パスワードを送信し、ウェルカム メッセージを読み上げる
コマンド「ヘルプ」を送信し、ヘルプメッセージを読み上げます
string command = "help"; // creates new TCP client TcpClient client = new TcpClient(adress, port); // get client stream NetworkStream stream = client.GetStream(); // send Password Byte[] data = System.Text.Encoding.ASCII.GetBytes(password); stream.Write(data, 0, data.Length); data = new Byte[256]; Thread.Sleep(200); Int32 bytes = stream.Read(data, 0, data.Length); String responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes); Console.WriteLine(responseData); // send the given command Byte[] data2 = System.Text.Encoding.ASCII.GetBytes(command); stream.Write(data2, 0, data2.Length); data2 = new Byte[2560]; Thread.Sleep(200); Int32 bytes2 = stream.Read(data2, 0, data2.Length); String responseData2 = System.Text.Encoding.ASCII.GetString(data2, 0, bytes2); Console.WriteLine(responseData2); // end stream and client stream.Close(); client.Close();
最初のクエリは正常に機能し、ウェルカム メッセージをコンソールに書き込みます。しかしInt32 bytes2 = stream.Read(data2, 0, data2.Length);
、2 番目のクエリでは、例外を返さずにアプリケーションが停止します。
ヘルプメッセージを読み上げられない理由を誰か説明できますか?