2013-01-31 15 views
5

Utilizzando lo spazio dei nomi System.Net.Mail il codice utilizzato è il seguente.Impossibile inviare messaggi in C# utilizzando i server di posta in uscita come Gmail/Yahoo utilizzando la porta 465

MailMessage MyMailMessage = new MailMessage("[email protected]", "[email protected]", 

"write your subject Here ", "Hi,This is the test message "); 

MyMailMessage.IsBodyHtml = false; 

NetworkCredential mailAuthentication = new NetworkCredential("[email protected]","xxxxxxxx"); 

    SmtpClient mailClient = new SmtpClient("smtp.gmail.com", 465); 

    mailClient.EnableSsl = true; 

    mailClient.DeliveryMethod = SmtpDeliveryMethod.Network; 

    mailClient.UseDefaultCredentials = false; 

    mailClient.Credentials = mailAuthentication; 

    mailClient.Send(MyMailMessage); 

L'eccezione di timeout del codice sopra riportato si verifica se viene utilizzata la porta 465. 25 porte funziona bene. Nel caso di account yahoo sia il 465 sia il 25 danno esito negativo nell'invio della posta.

C'è comunque una porta 465 può essere supportata per l'invio di e-mail utilizzando l'account gmail o yahoo.

riferiti seguente link http://blogs.msdn.com/b/webdav_101/archive/2008/06/02/system-net-mail-with-ssl-to-authenticate-against-port-465.aspx

È afferma che Windows Mail utilizza System.Net.Mail per inviare i messaggi - non funzionerà con SSL implicito.

C'è qualche soluzione per risolvere questo problema.

Grazie in anticipo

+0

Stai utilizzando un blocco try/catch? Che errore viene generato? – DGibbs

+0

puoi mostrarci quale eccezione stai ricevendo? Fornire il dettaglio stack trace – Cris

+1

Non sono sicuro se aiuta, ma io invio email con google smpt porta 587. Funziona. –

risposta

2

Questa non è una risposta al problema, ma .NET classe incorporata elettronica non supportare la necessaria implicita SSL method.You necessario utilizzare componenti client SMTP di terze parti per questo scopo che sono in grado sia di SSL esplicito che implicito.

+0

Grazie Cris. Si spera che la classe di posta elettronica .NET supporti il ​​protocollo SSL implicito in altre versioni. –

Problemi correlati