2011-09-08 231 views
1

地狱伙计!使用SMTP服务器发送邮件

我已经使用SMTP服务器发送邮件按以下

public bool SendMail(string mailFrom, string mailTo, string mailCC, string mailBCC, string subject, string body, string attachment, bool isBodyHtml) 
{ 
    bool SendStatus = false; 
    System.Net.Mail.MailMessage mailMesg = new System.Net.Mail.MailMessage(mailFrom, mailTo); 

    if (mailCC != string.Empty) 
     mailMesg.CC.Add(mailCC); 

    if (mailBCC != string.Empty) 
     mailMesg.Bcc.Add(mailBCC); 

    if (!string.IsNullOrEmpty(attachment)) 
    { 
     System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(attachment); 
     mailMesg.Attachments.Add(attach); 
    } 
    mailMesg.Subject = subject; 
    mailMesg.Body = body; 
    mailMesg.IsBodyHtml = isBodyHtml; 
    mailMesg.ReplyTo = new System.Net.Mail.MailAddress(mailFrom); 

    System.Net.Mail.SmtpClient objSMTP = new System.Net.Mail.SmtpClient(); 


    string Host = System.Configuration.ConfigurationManager.AppSettings["MailHost"].ToString(); 
    string UserName = System.Configuration.ConfigurationManager.AppSettings["MailUserId"].ToString(); 
    string password = System.Configuration.ConfigurationManager.AppSettings["MailPassword"].ToString(); 


    objSMTP.Host = Host; 
    objSMTP.Port = int.Parse(System.Configuration.ConfigurationManager.AppSettings["Port"].ToString()); 
    objSMTP.Credentials = new System.Net.NetworkCredential(UserName, password); 


    objSMTP.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 

    try 
    { 
     objSMTP.Send(mailMesg); 
     SendStatus = true; 
    } 
    catch (Exception ex) 
    { 
     throw ex; 
    } 
    finally 
    { 
     mailMesg.Dispose(); 
     mailMesg = null; 
    } 


    return SendStatus; 

} 

我想知道,是否可以发送邮件,而用户名密码&? 如果可能的话,任何人都可以请建议我该怎么做?

回答

0

当然,如果你的smtp服务器不需要cridentials,你不应该指定em。否则,你应该。

0

我认为你需要白名单的IP,你将发送电子邮件从哪个将是你的服务器,这个选项是完成的邮件帐户,你要发送电子邮件。

相关问题