2014-08-28 163 views
0

我已經買了的cPanel主機和SMTP服務器信息是:發送電子郵件C#(cPanel主機)

info

這是我的代碼:

string smtpAddress = "mandane.hostcream.com"; 
int portNumber = 465; 
bool enableSSL = true; 
string emailFrom = "[email protected]"; 
string password = Authenitication.PassWord; 
string emailTo = To.Text; 
string subject = Subject.Text; 
string body = Body.Text; 

using (MailMessage mail = new MailMessage()) 
{ 
    mail.From = new MailAddress(emailFrom); 
    mail.To.Add(emailTo); 
    mail.Subject = subject; 
    mail.Body = body; 
    mail.IsBodyHtml = true; 

    using (SmtpClient smtp = new SmtpClient(smtpAddress, portNumber)) 
    { 
     smtp.Credentials = new NetworkCredential(emailFrom, password); 
     smtp.EnableSsl = enableSSL; 
     smtp.Send(mail); 
    } 
} 

當我運行我的代碼並在出現1或2分鐘後點擊發送按鈕:

附加信息:發送郵件失敗。

我在做什麼錯?

+0

有你雙重檢查的電子郵件地址和密碼是正確的? **還有你有任何附件嗎?** – Prix 2014-08-28 09:55:32

+0

是的電子郵件和密碼是正確的... – user3788648 2014-08-28 09:59:13

+0

不,我沒有任何附件...但用戶和密碼,我相信他們是正確的.. – user3788648 2014-08-28 09:59:45

回答

2

我想你錯過了什麼,試試這個:

SmtpClient smtpClient = new SmtpClient(); 
NetworkCredential smtpCredentials = new NetworkCredential("email from","password"); 

MailMessage message = new MailMessage(); 
MailAddress fromAddress = new MailAddress("email from"); 
MailAddress toAddress = new MailAddress("email to"); 

smtpClient.Host = "smpt host address"; 
smtpClient.Port = your_port; 
smtpClient.EnableSsl = true; 
smtpClient.UseDefaultCredentials = false; 
smtpClient.Credentials = smtpCredentials; 
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; 
smtpClient.Timeout = 20000; 

message.From = fromAddress; 
message.To.Add(toAddress); 
message.IsBodyHtml = false; 
message.Subject = "example"; 
message.Body = "example"; 

smtpClient.Send(message); 
+0

不起作用... – user3788648 2014-08-28 10:10:20

+0

該方法是好的,在我的應用程序中爲我工作...所以我不知道你在做什麼錯... – Sowiarz 2014-08-28 10:12:32

0

看起來您無法到達端口465的雅虎地址,請檢查此地址是否首先到達,因爲它似乎是網絡問題。

+0

它不是Yahoo!它是我的cPanel託管!首先,我已將啓用SSL設置爲false,但我將其更改爲true,現在顯示如下: 其他信息:發送郵件失敗。 – user3788648 2014-08-28 09:51:56

+0

你可以到達服務器IP /地址嗎?您可以使用telnet先測試連接。 – 2014-08-28 09:55:40

+0

我有ping到「mandane.hostcream.com」和它的所有權利......但telnet我沒有測試...我應該運行什麼命令? – user3788648 2014-08-28 09:58:28