我在我的 IIS 中安装了Windows XP并配置了SMTP服务器。在常规标签的 IP 地址中指定AllUnAssigned
,并在访问标签下指定127.0.0.1
。
现在我尝试使用以下代码
使用本地SMTP服务器发送邮件MailMessage amessage = new MailMessage();
amessage.To.Add(new MailAddress("xxx@gmail.com"));
amessage.From = new MailAddress("yyy@gmail.com");
amessage.Subject = "TestMail";
amessage.Body = "This is a testmail";
SmtpClient clienta = new SmtpClient("localhost");
clienta.Timeout = 500;
clienta.Credentials = CredentialCache.DefaultNetworkCredentials;
try
{
clienta.Send(amessage);
}
catch (Exception ex)
{
Console.WriteLine(ex);
Console.ReadLine();
}
Console.ReadLine();
执行上述代码时没有任何错误,但没有发送/接收邮件。当我在Inetpub中查看时,我找到了以下文件:
来自:postmaster @ munged 致:yyy@gmail.com 日期:星期二,2011年4月26日11:07:22 +0530 MIME版本:1.0
内容类型:multipart / report;
报告类型=递送状态;
边界= “9B095B5ADSN = _01CC03D260FE2C6C00000003munged?XXX”
消息ID:
主题:交货状态通知
(失败)这是MIME格式的消息 此消息的部分内容可能是 没有支持MIME的邮件是不可读的 程序
- ?9B095B5ADSN = _01CC03D260FE2C6C00000003munged被改写的 内容类型:text / plain; 字符集= Unicode的1-1-UTF-7
这是自动生成的 交货状态通知。
投放给以下收件人 失败。
xxx@gmail.com
- ?9B095B5ADSN = _01CC03D260FE2C6C00000003munged被改写的 内容类型:消息/传递状态
报告-MTA:dns; munged 收到来自MTA:dns; munged 抵达日期:2011年4月26日星期二 11:07:16 +0530
最终收件人:rfc822; xxx@gmail.com
行动:失败状态:5.0.0
诊断代码:smtp; 550-5.7.1
[122.178.191.78]您正在使用的IP 发送邮件无权授权 550-5.7.1直接发送电子邮件给我们 服务器。请在左侧使用SMTP中继 您的550-5.7.1服务提供商
代替。了解更多信息 550 5.7.1
http://mail.google.com/support/bin/answer.py?answer=10336
m9si19863225wfl.114- ?9B095B5ADSN = _01CC03D260FE2C6C00000003munged被改写的 内容类型:message / rfc822
收到:来自munged
([127.0.0.1])与 Microsoft SMTPSVC(6.0.2600.2180);
星期二,2011年4月26日11:07:16 +0530
MIME版本:1.0来自:yyy@gmail.com
致:xxx@gmail.com日期:2011年4月26日
11:07:16 +0530主题:TestMail
内容类型:text / plain;
字符集= US-ASCII
内容传输编码:
引用可打印的返回路径:
munged@gmail.com消息ID:
X-OriginalArrival时间:2011年4月26日
05:37:16.0515(UTC)
FILETIME = [009D2330:01CC03D4]这是一个testmail
- 9B095B5ADSN = _01CC03D260FE2C6C00000003munged被改写的 - ?
有人可以帮我吗?
答案 0 :(得分:2)
以下是错误消息的重要部分:
诊断代码:smtp; 550-5.7.1 [122.178.191.78]您用于发送邮件的IP无权通过550-5.7.1直接向我们的服务器发送电子邮件。请改用550-5.7.1服务提供商的SMTP中继。
要解决此问题,您需要设置SMTP中继以发送到ISP的电子邮件服务器。他们会为您发送给Google。
为清楚起见:
smtp.yourISP.com
。答案 1 :(得分:0)
我认为如果您想通过PC从Gmail发送电子邮件,则应使用SSL加密数据。你必须在这里选择:
答案 2 :(得分:0)
您可以使用以下两种方法之一解决此问题
选项1.在“访问”选项卡下将“127.0.01”更改为“localhost”。
选项2.使用“127.0.01”而不是localhost更改用于连接的代码。
SmtpClient clienta = new SmtpClient("127.0.01");