我正在尝试使用以下代码验证电子邮件域验证(在代码Proejct上找到)
string hostName="<hostName>"; //Ex: yahoo.com
IPHostEntry Iphost=Dns.GetHostEntry(hostName);
IPEndPoint endPt=new IPEndPoint(Iphost.AddressList[0],25);
Socket s=new Socket(endPt.AdressFamily, SocketType.Stream, ProtocolType.Tcp);
s.Connect(endPt);
在s.Connect上我收到错误:尝试对无法访问的网络进行套接字操作。 可能的原因是什么,我该如何解决?我的机器上有防火墙(Comodo)。
答案 0 :(得分:1)
计算机无法连接到已解析的地址。
查看Dns.Resolve
给出的地址。
注意:
Resolve
方法is obsolete,并替换为GetHostEntry。 e.g:IPHostEntry host = Dns.GetHostEntry("yahoo.com");
答案 1 :(得分:-2)
变化
Socket s=new Socket(endPt.AdressFamily, SocketType.Stream, ProtocolType.Tcp);
到
Socket s=new Socket(endPt.AddressFamily, SocketType.Stream, ProtocolType.Tcp);