当前位置:编程学习 > C#/ASP.NET >>

内网需要代理环境的情况下,smtpclient可用否?

在使用smtpclient的时候要不要考虑设置代理啊?还是会自动按照ie配置发送吗? --------------------编程问答-------------------- 这要看你内网的链接限制 --------------------编程问答-------------------- 这样说吧,
环境:ie需要配置http代理才能上网。firefox在配置了代理以后可以正常收发163邮件。
现象:使用下面代码无法发出邮件,报错发送邮件失败
请问如何解决?需要自己手工写一个可设置代理的smtpclient吗?如果不需要如何解决?

代码如下:
        MailMessage m = new MailMessage();
            m.From = new MailAddress("testmaildd@163.com");
            
            m.To.Add("testasdf@163.com");
            m.Subject = "test";
            m.Body = "test";
            SmtpClient sc = new SmtpClient();
            sc.Credentials = new System.Net.NetworkCredential("testmaildd@163.com", "*******");
            sc.Port = 25;
            sc.Host = "smtp.163.com";
            sc.EnableSsl = false;
            
            try
            {
                sc.Send(m);
            }
            catch (System.Net.Mail.SmtpException ex)
            {
                MessageBox.Show(ex.Message+ "发送邮件出错");
            } --------------------编程问答-------------------- smtp服务器启动/设置好了没有 
局域网是否禁止了smtp出去 --------------------编程问答-------------------- 补充楼上:
1、smtp服务器必然已经启动。
2、局域网应该没有禁止smtp出去,因为:
“firefox在配置了代理以后可以正常收发163邮件。” --------------------编程问答--------------------
引用楼主 cometxd 的回复:
在使用smtpclient的时候要不要考虑设置代理啊?还是会自动按照ie配置发送吗?


想你的代理服务器的ip(如果包括端口,就包括端口)发送http命令就行了。没有任何“配置”问题。 --------------------编程问答-------------------- 发送http命令就行了  -->  发送命令就行了 --------------------编程问答--------------------
引用 5 楼 sp1234 的回复:
引用楼主 cometxd 的回复:
在使用smtpclient的时候要不要考虑设置代理啊?还是会自动按照ie配置发送吗?


想你的代理服务器的ip(如果包括端口,就包括端口)发送http命令就行了。没有任何“配置”问题。


有道理,直接向代理服务器发送http命令确实好像能够解决。但是smtpClient毕竟是c#给封装好的了,多方便啊。请问c#中有没有定义好的类?可以配置代理服务器,并且可以像smtpClient一样的发送邮件
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,