所以我写了这个程序,给我的一群朋友发短信。 当我尝试在工作中使用它时,它在家里工作正常。我收到错误消息“发送邮件失败”。
我们正在使用拦截代理。我希望/希望一切都能正常工作,显然不是。
那么我需要做什么,我从未编程过通过代理连接/发送流量。
我正在使用C#和SmtpClient类发送消息。 这是一个小片段。
SmtpClient client = new SmtpClient(emailType.Address, emailType.Port);
client.Credentials = new System.Net.NetworkCredential(tbxAccountUser.Text, tbxUserPassword.Text);
client.Send(message);
我和我们的IT部门谈过,我有他们正在使用的IP,但我不确定我需要什么。我甚至不确定使用哪个班级......
我试过了:
WebRequest myWebRequest = WebRequest.Create(“http://www.google.com”); WebProxy myProxy = new WebProxy(); //获取默认浏览器的代理属性 myProxy =(WebProxy)myWebRequest.Proxy;
Uri newUri = new Uri("http://"+ ip +":8080");
// Associate the new Uri object to the myProxy object.
myProxy.Address = newUri;
// Create a NetworkCredential object and is assign to the Credentials property of the Proxy object.
myProxy.Credentials = new NetworkCredential(userName, passWd);
myWebRequest.Proxy = myProxy;
我不确定我是否可以将其设置为我的SmtpClient客户端?
由于
答案 0 :(得分:1)
我遇到了同样的问题。 SMTP类没有代理属性,这使事情变得非常复杂。我唯一想到的是使用WebRequest类并将您的邮件的每个属性作为单个字符串发送,然后等待服务器的响应(WebRequest具有代理属性)。但我还没有实现它。 :)