问题描述
protectedvoidPage_Load(objectsender,EventArgse){try{TcpClienttcpClient=newTcpClient("smtp.mail.yahoo.cn",25);Response.Write("HELOlocalhost:"+OperateStream(tcpClient,"HELOlocalhost")+"<br>");Response.Write("AUTHLOGIN:"+OperateStream(tcpClient,"AUTHLOGIN")+"<br>");//写入base64加密后的邮箱地址进行登录(原地址为:zhongjinhua_09@yahoo.cn)Response.Write("UserName:"+OperateStre(tcpClient,"emhvbmdqaW5odWFfMDlAeWFob28uY24="+"<br>");//写入base64加密后的邮箱密码进行登录Response.Write("Password:"+OperateStream(tcpClient,"SUNPS18xMWFiY19S")+"<br>");Response.Write("MAILFROM:"+OperateStream(tcpClient,"MAILFROM:zhongjinhua_09@yahoo.cn")+"<br>");Response.Write("RCPTTO:"+OperateStream(tcpClient,"RCPTTO:995229242@qq.com"));}catch(Exceptionee){throwee;}}protectedstringOperateStream(TcpClienttcpClient,stringstrCmd){NetworkStreamstream=tcpClient.GetStream();strCmd+="rn";Byte[]buffer=Encoding.Default.GetBytes(strCmd.ToCharArray());stream.Write(buffer,0,buffer.Length);System.IO.StreamReaderReader=newSystem.IO.StreamReader(tcpClient.GetStream(),Encoding.Default);stringinfo=Reader.ReadLine().Substring(0,3);returninfo;}运行结果如下:HELOlocalhost:220AUTHLOGIN:250UserName:334Password:334MAILFROM:235RCPTTO:501当我把连接的主机名"smtp.mail.yahoo.cn"改为"mail.cn.yahoo.com"(这个是截取的是雅虎主页url,"http://"后面的字符),运行出错,"由于目标机器积极拒绝,无法连接。203.209.228.242:25"请问正确的连接雅虎邮箱服务的主机名应该怎么写?第一次运行结果的数字又代表了什么意思?我的代码有哪些错误?问题在哪里?我是个菜鸟,求资深人士指点
解决方案
解决方案二:
你可以尝试一下,不连接雅虎的,链接一个确实可以成功的邮件服务器,确认一下程序逻辑是没有问题的然后再根据雅虎的特点进行调整
解决方案三:
该回复于2012-02-10 14:02:54被版主删除
解决方案四:
该回复于2012-02-10 14:02:54被版主删除
解决方案五:
该回复于2012-02-10 14:02:54被版主删除