10.07.2009, 12:48 | #1 |
Постигающий
|
Метод "SendMail" в COM-объекте класса "Dundas.mailer" возвратил код ошибки 0x80004005 (E_FAIL), который означает: The RCPT command failed. The specified account does not exist.
Цитата:
"Метод "SendMail" в COM-объекте класса "Dundas.mailer" возвратил код ошибки 0x80004005 (E_FAIL), который означает: The RCPT command failed. The specified account does not exsist."
письма я рассылаю в цикле на разные адреса как мне избежать остановки рассылки остальных писем при вылете этой ошибки? + желательно по вылету этой ошибки выводить юзеру сообщение , что "на такой то адрес письмо не отправилось" - нормальным юзерским языком. Спасибо |
|
10.07.2009, 13:02 | #2 |
program-ёр
|
X++: try { mailer.sendMail(); } catch (Exception::Error) { warning(strFmt("Письмо по адресу '%1' не отправлено!", Email)); } catch (Exception::Internal) { }
__________________
Становись лучше |
|
10.07.2009, 13:16 | #3 |
Постигающий
|
спасибо, все верно. я сам напортачил )
после исправления кое-каких своих косяков ошибка стала ловиться подскажите, как мне идентифицировать вылетающую ошибку, чтоб сообщение на юзерском языке выводилось только при возникновении именно этой ошибки Цитата:
"Метод "SendMail" в COM-объекте класса "Dundas.mailer" возвратил код ошибки 0x80004005 (E_FAIL), который означает: The RCPT command failed. The specified account does not exsist."
|
|
10.07.2009, 16:08 | #4 |
Участник
|
Цитата:
X++: int line; ; // ... try { line = infolog.line(); // запоминаем, сколько было сообщений до отправки почты mailer.sendMail(); } catch (Exception::Error) { infolog.cut(line + 1); // удаляем сообщения, возникшие внутри кода sendMail() warning(strFmt("Письмо по адресу '%1' не отправлено!", Email)); } |
|