2008-10-31 110 views
11

我正在尝试创建TCP连接并发送/读取使用SSL的数据,但我无法成功完成此操作。使用SSL创建TCP客户端连接

我希望做的是这样的:

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

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

    Console.WriteLine(reader.ReadString()); 

我没有任何运气与它虽然。创建BinaryReader时引发异常。

有没有人知道一个简单的例子,这样做?我不想写这个服务器端,只是客户端。

+0

BinaryReder一个特定编码读取原始数据类型为二进制值,是你的服务器发送? – 2008-10-31 01:37:11

回答

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()); 
1

我不能完全肯定这是否会为你的应用程序工作,但我会建议考虑看看安全通道:
http://www.stunnel.org

我用它在过去包装现有的TCP连接。