日期:2014-05-17  浏览次数:20927 次

请问,如何在程序中发邮件
如何在程序中发邮件呢?

比如,变量x的值等于5时,就向某个邮箱发邮件
谢谢!

------解决方案--------------------
C# code

  /// <summary> 
        /// 发送电子邮件 
        /// </summary> 
        /// <param name="MessageTo">收件人邮箱地址</param> 
        /// <param name="MessageSubject">邮件主题</param> 
        /// <param name="MessageBody">邮件内容</param> 
        /// <returns></returns> 
        public static bool Send(List<string> MessageTo, string MessageSubject, string MessageBody)
        {
            MailMessage message = new MailMessage();
            message.From = new MailAddress(MailAccount);
            MessageTo.ForEach(m => message.To.Add(m));
            message.Subject = MessageSubject;
            message.Body = MessageBody;
            message.IsBodyHtml = true;
            message.Priority = MailPriority.Normal;

            SmtpClient sc = new SmtpClient();
            sc.Host = MailHost;
            sc.Port = MailPort;

            sc.Credentials = new System.Net.NetworkCredential(MailAccount, MailPassword);

            try
            {
                sc.Send(message);
            }
            catch (OtherException ex)
            {
                throw (ex);
            }
            return true;

        }

------解决方案--------------------
C# code
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
client.Host = "smtp.163.com";//使用163的SMTP服务器发送邮件
client.UseDefaultCredentials = true;
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
client.Credentials = new System.Net.NetworkCredential("abc", "*******");//163的SMTP服务器需要用163邮箱的用户名和密码作认证,如果没有需要去163申请个,
                                                                        //这里假定你已经拥有了一个163邮箱的账户,用户名为abc,密码为*******
System.Net.Mail.MailMessage Message = new System.Net.Mail.MailMessage();
Message.From = new System.Net.Mail.MailAddress("abc@163.com");//这里需要注意,163似乎有规定发信人的邮箱地址必须是163的,而且发信人的邮箱用户名必须和上面SMTP服务器认证时的用户名相同
                                                              //因为上面用的用户名abc作SMTP服务器认证,所以这里发信人的邮箱地址也应该写为abc@163.com
Message.To.Add("123456@gmail.com");//将邮件发送给Gmail
Message.To.Add("123456@qq.com");//将邮件发送给QQ邮箱
Message.Subject = "测试标题";
Message.Body = "测试邮件内容";
Message.SubjectEncoding = System.Text.Encoding.UTF8;
Message.BodyEncoding = System.Text.Encoding.UTF8;
Message.Priority = System.Net.Mail.MailPriority.High;
Message.IsBodyHtml = true;
client.Send(Message);