0

C# アプリケーションで telnet を使用して TeamSpeak 3 サーバーに接続しようとしています。

ちなみに、私は telnet の使用経験があまりありません^^' ので、サイト https://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient(VS. 80).aspx

次のコードは次のようにする必要があります。

  1. チームピーク サーバーに接続する
  2. パスワードを送信し、ウェルカム メッセージを読み上げる
  3. コマンド「ヘルプ」を送信し、ヘルプメッセージを読み上げます

        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 番目のクエリでは、例外を返さずにアプリケーションが停止します。

ヘルプメッセージを読み上げられない理由を誰か説明できますか?

4

1 に答える 1