一. 关于与服务器的连接
与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 类形成到服务的连接点。