11

TCP接続を作成し、SSLを使用してデータを送信/読み取りしようとしていますが、これを正常に実行できませんでした。

私がやりたいのは次のようなものです。

    TcpClient _tcpClient = new TcpClient("host", 110);

    BinaryReader reader = 
       new BinaryReader(new System.Net.Security.SslStream(_tcpClient.GetStream(), true));

    Console.WriteLine(reader.ReadString());

でも運がなかった。BinaryReaderの作成時に例外がスローされます。

これを行う簡単な例を知っている人はいますか?私はこれのサーバー側を書くことに興味はなく、クライアントだけに興味があります。

4

2 に答える 2

12

BinaryReaderは、プリミティブデータ型を特定のエンコーディングのバイナリ値として読み取りますが、それはサーバーが送信するものですか?
StreamReaderを使用しない場合:

TcpClient _tcpClient = new TcpClient("host", 110);

StreamReader reader = 
   new StreamReader(new System.Net.Security.SslStream(_tcpClient.GetStream(), true));

Console.WriteLine(reader.ReadToEnd());
于 2008-10-31T01:47:34.117 に答える
1

これがアプリケーションで機能するかどうかは完全にはわかりませんが、stunnelを確認することをお勧めします。http://www.stunnel.org
過去

に既存のTCP接続をラップするために使用しました。

于 2008-10-31T01:38:12.917 に答える