Не могу отослать письмо с помощью smtpClient.Send
От: vlepihin Россия  
Дата: 28.09.07 09:13
Оценка:
Здравствуйте.
Написал простой код (C# Express 2005)
            MailMessage message = new MailMessage("sender@mail.ru", "recipient@mail.ru");
            message.Body = "body";
            message.Subject = "subj";
            SmtpClient smtpClient = new SmtpClient("mail.ews.ru", 25);
            smtpClient.UseDefaultCredentials = true;
            smtpClient.Send(message);

На последней строчке все виснет, письмо не отправляется.
В чем может быть проблема?
Re: Не могу отослать письмо с помощью smtpClient.Send
От: Дюша Россия http://www.danfoss.com/russia
Дата: 28.09.07 09:46
Оценка:
Здравствуйте, vlepihin, Вы писали:

V>Здравствуйте.

V>Написал простой код (C# Express 2005)
V>
V>            MailMessage message = new MailMessage("sender@mail.ru", "recipient@mail.ru");
V>            message.Body = "body";
V>            message.Subject = "subj";
V>            SmtpClient smtpClient = new SmtpClient("mail.ews.ru", 25);
V>            smtpClient.UseDefaultCredentials = true;
V>            smtpClient.Send(message);
V>

V>На последней строчке все виснет, письмо не отправляется.
V>В чем может быть проблема?

Смотрим InnerException. Написано:

Unable to connect to the remote server.

A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>

Re[2]: Не могу отослать письмо с помощью smtpClient.Send
От: vlepihin Россия  
Дата: 28.09.07 10:08
Оценка:
Здравствуйте, Дюша, Вы писали:

Д>Смотрим InnerException. Написано:


Д>

Д>Unable to connect to the remote server.

Д>A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond


Сделал так:

            try
            {
                smtpClient.Send(message);
            }
            catch(Exception e)
            {
                Console.WriteLine("In Main catch block. Caught: {0}", e.Message);
                Console.WriteLine("Inner Exception is {0}", e.InnerException);                
            }

В Inner Exception — пусто.
Но дело не в этом. Вопрос — почему сервер недоступен? Доступ к нему у меня есть, письма я через него посредством Outlook Express отсылать могу...
Re[3]: Не могу отослать письмо с помощью smtpClient.Send
От: Дюша Россия http://www.danfoss.com/russia
Дата: 28.09.07 10:15
Оценка:
Здравствуйте, vlepihin, Вы писали:

V>Сделал так:

V>
V>            try
V>            {
V>                smtpClient.Send(message);
V>            }
V>            catch(Exception e)
V>            {
V>                Console.WriteLine("In Main catch block. Caught: {0}", e.Message);
V>                Console.WriteLine("Inner Exception is {0}", e.InnerException);                
V>            }
V>

V>В Inner Exception — пусто.
V>Но дело не в этом. Вопрос — почему сервер недоступен? Доступ к нему у меня есть, письма я через него посредством Outlook Express отсылать могу...

Я в дебаге смотрел exception. Copy/paste оттуда.
Сервер может быть недоступен, например, по причине неправильного обращениая к нему. Проверьте адрес, user name / password (или у вас разрешена анонимная отправка сообщений?). Самая банальная причина — не подключен интернет или нужны настройки прокси. Тоже стоит проверить
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>

Re[4]: Не могу отослать письмо с помощью smtpClient.Send
От: vlepihin Россия  
Дата: 28.09.07 10:35
Оценка:
Здравствуйте, Дюша, Вы писали:

Д>Я в дебаге смотрел exception. Copy/paste оттуда.

Д>Сервер может быть недоступен, например, по причине неправильного обращениая к нему. Проверьте адрес, user name / password (или у вас разрешена анонимная отправка сообщений?). Самая банальная причина — не подключен интернет или нужны настройки прокси. Тоже стоит проверить

Оказалось, что
smtpClient.UseDefaultCredentials = true;

Я зря написал. Без него все отправилось, без всяких пользователей и паролей. Почему?
Re[5]: Не могу отослать письмо с помощью smtpClient.Send
От: Дюша Россия http://www.danfoss.com/russia
Дата: 28.09.07 10:43
Оценка:
Здравствуйте, vlepihin, Вы писали:

V>Оказалось, что

V>
V>smtpClient.UseDefaultCredentials = true;
V>

V>Я зря написал. Без него все отправилось, без всяких пользователей и паролей. Почему?

RTFM

Some SMTP servers require that the client be authenticated before the server sends e-mail on its behalf. Set this property to true when this SmtpClient object should, if requested by the server, authenticate using the default credentials of the currently logged on user.


If the UseDefaultCredentials property is set to false and the Credentials property has not been set, then mail is sent to the server anonymously.

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>

Re[6]: Не могу отослать письмо с помощью smtpClient.Send
От: vlepihin Россия  
Дата: 28.09.07 10:50
Оценка:
Здравствуйте, Дюша, Вы писали:

Д>RTFM

Д>

Д>Some SMTP servers require that the client be authenticated before the server sends e-mail on its behalf. Set this property to true when this SmtpClient object should, if requested by the server, authenticate using the default credentials of the currently logged on user.


Д>

Д>If the UseDefaultCredentials property is set to false and the Credentials property has not been set, then mail is sent to the server anonymously.

Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.