2013-07-22 10 views
1

В моем приложении я отправляю почту с использованием SMTP-сервера. Как я могу отправить почту с gmail smtp-сервера с портами 25 и 587 нет, но когда я использую 465-портовый smtp-сервер, который не может отправлять почту и переходит в процесс в течение бесконечного времени Я использую ниже код для отправки почты.Невозможно отправить почту, используя порт 465 для узла smtp.gmail.com

MailMessage mailmsg; 
SmtpClient client; 

client = new SmtpClient("smtp.gmail.com", 465); 
mailmsg = new MailMessage(); 
client.Credentials = new System.Net.NetworkCredential("[email protected]", "Password"); 
client.EnableSsl = true; 
mailmsg.From = new MailAddress("[email protected]"); 

mailmsg.To.Add("[email protected]"); 

client.Send(mailmsg); 

Я не смог обнаружить problem.Can любой из есть Решение Thanx заранее.

ответ

0

Порт 465 - это порт SSL для SMTP-сервера Gmail. Вам нужно активировать SSL для использования этого порта.

client.EnableSsl = true; 

Я думаю, что он должен работать (не могу проверить его прямо сейчас).

+0

Я уже протестировал с client.EnableSsl = true, но его он не решает мою проблему. –

+0

Можете ли вы запустить свой код в отладке и шаг за шагом, чтобы посмотреть, где процесс замерзает? Может быть, это может помочь нам понять, почему это ошибка с этим портом, а не с другим ... И тогда зачем использовать 465, когда работает порт 587? У вас есть какое-то конкретное использование одного над другим? – orion78fr

0

установить тайм-аут.

client.Timeout = 10000;

Теперь он вернется через 10 секунд с отказом, а не ждет навсегда.