设为首页 收藏本站
查看: 797|回复: 0

[经验分享] C#中的SMTP配置Outlook.Com SMTP主机

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-14 08:11:27 | 显示全部楼层 |阅读模式
  如果你想以编程方式使用    Outlook.com或Gmail帐户作为    SMTP主机    发送电子邮件,也有为了得到这一切工作的几件事情要注意。
  使用基本的System.Net.Mail库,发送电子邮件一般是相当简单的。不过,如果你想用你的Outlook.Com或      Gmail帐户      作为SMTP主机发送,您将最有可能需要采取一些额外的步骤,如果你有两个阶段授权启用(和你有两个阶段启用身份验证吧??!!)。      

SMTP配置举例Outlook.Com    SMTP主机
  下面是一个基本类    SMPT配置    为使用Outlook.Com的SMTP发送邮件:

基本邮件配置设置Outlook.Com SMTP:

using System;
/ / 你将需要添加一个引用到这个库:
using System.Net.Mail;
namespace SmtpMailConnections
{
public class OutlookDotComMail
{
string _sender = "";
string _password = "";
public OutlookDotComMail(string sender, string password)
{
_sender = sender;
_password = password;
}  
public void SendMail(string recipient, string subject, string message)
{
SmtpClient client = new SmtpClient("smtp-mail.outlook.com");
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
System.Net.NetworkCredential credentials =
new System.Net.NetworkCredential(_sender, _password);
client.EnableSsl = true;
client.Credentials = credentials;
try
{
var mail = new MailMessage(_sender.Trim(), recipient.Trim());
mail.Subject = subject;
mail.Body = message;
client.Send(mail);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
throw ex;
}
}
}
}
  正如你所看到的,我们一直保持这个相当小的清楚的目的。我们初始化我们的简单类的用户名(在本例中,我们Outlook.Com电子邮件地址)和密码。
  我们可以调用这个类来发送邮件这样的(这个例子是一个简单的控制台应用程序):

发送邮件使用邮件发件人

class Program
{
static void Main(string[] args)
{
string mailUser = "YourAccount@outlook.com";
string mailUserPwd = "YourPassword";
var sender = new OutlookDotComMail(mailUser, mailUserPwd);
sender.SendMail("recipient@example.com", "Test Mail", "Hello!");
}
}
  如果你运行上面的代码中,使用自己的Outlook.Com电子邮件地址和密码,都应该可以正常工作。
  除非      您已启用了两级授权您Outlook.Com帐户。如果你有,你需要创建一个应用程序特定的密码,或当您的凭据是由Outlook.Com      SMTP服务器      拒绝上述代码将抛出一个异常。   


  要创建一个应用程序专用密码,登录到您的Outlook.com帐户,并进入帐户设置- >安全资讯- >应用程序密码
DSC0000.png
  单击创建一个新的应用程序密码的链接,瞧 – 你现在有一个新的密码为你的应用程序中使用:
DSC0001.png
  以此作为在代码中的密码,就可以成功了:

使用而不是你的Outlook.Com帐户密码的应用程序密码:

class Program
{
static void Main(string[] args)
{
string mailUser = "YourAccount@outlook.com";
string mailUserPwd = "bnppnnenfmpiixty";
var sender = new OutlookDotComMail(mailUser, mailUserPwd);
sender.SendMail("recipient@example.com", "Test Mail", "Hello!");
}
}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-113213-1-1.html 上篇帖子: Outlook add-ins webcasts讲座代码之四(高级搜索) 下篇帖子: Microsoft 将发布 Android 平台的Outlook
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表