日期:2013-03-28  浏览次数:20492 次

一. 关于与服务器的连接

与smtp服务器的连接一般采用两种方式:

第一种:
当服务器地址是字符串型的,例如“smtp.tom.com”,“211.128.11.25”这样的形式时,我们可以用TcpClient类建立连接。

tcpClient = new TcpClient (smtpServer, smtpPort);

隶属命名空间:
System.Net.Sockets.TcpClient
为使 TcpClient 连接并交换数据,使用 TCP ProtocolType 创建的 TcpListener 或 Socket 必须侦听是否有传入的连接请求。可以使用 下面两种方法之一连接到该侦听器:

创建一个 TcpClient,并调用三个可用的 Connect 方法之一。
使用远程主机的主机名和端口号创建 TcpClient。此构造函数将自动尝试一个连接。


第二种:

当服务器地址是IP地址的形式时,连接它就要用到IPEndPoint 类。

IPEndPoint smtpServerIPEndPoint = new IPEndPoint(smtpServerIPAddress,smtpPort);

我们可以把string类型的服务器地址转化为IP地址形式:

IPAddress hostIPAddress = (Dns.Resolve(hostString)).AddressList[0];

隶属命名空间:System.Net.EndPoint

IPEndPoint 类包含应用程序连接到主机上的服务所需的主机和端口信息。通过组合服务的主机 IP 地址和端口号,
IPEndPoint 类形成到服务的连接点。