08.04.2008, 20:18 | #1 |
Участник
|
Метод 'SendMail' в COM-объекте класса 'Dundas.mailer' возвратил код ошибки 0x80004005 (E_FAIL), который означает: The HELLO command failed.
X++: static void Job59(Args _args) { SysMailer mailer = new SysMailer(); ; mailer.SMTPRelayServers().add("post",25, "post", "a.akhmetov", "pass"); mailer.fromAddress("[EMAIL="zbg1@somehost.ru"]zbg1@somehost.ru[/EMAIL]"); mailer.fromName("name"); mailer.subject("test"); mailer.tos().add([EMAIL="zbg@mail.ru"]zbg@mail.ru[/EMAIL]); mailer.htmlbody("1111111"); mailer.sendMail(); } Метод 'SendMail' в COM-объекте класса 'Dundas.mailer' возвратил код ошибки 0x80004005 (E_FAIL), который означает: The HELLO command failed. на форуме уже пытались решать проблему но так видимо и не решили. Заранее спасибо |
|
08.04.2008, 22:50 | #2 |
Участник
|
На каком именно форуме? при чем тут вообще Аксапта? Указанная ошибка говорит о том, что TCP-соединение успешно устанавливается, но возникает ошибка на уровне протокола SMTP. С командной HELLO (точнее, HELO) SMTP-клиент передает свое DNS-имя. Некоторые SMTP-сервера настроены так, что они через RDNS проверяют, соответствует ли указанное имя IP-адресу, с которого соединяется клиент, и если не соответствует, - завершают соединение. Чтобы убедиться в этом, поставьте какой-нить Network Monitor, получите сетевой трафик, отфильтруйте по 25-му порту и посмотрите, что именно отвечает SMTP-сервер - уверен, его ответ будет куда информативнее, чем приведенное сообщение об ошибке. Заодно узнаете, как именно "представляется" SMTP-серверу ваш Dundas.mailer.
Последний раз редактировалось gl00mie; 08.04.2008 в 22:52. |
|
09.04.2008, 11:49 | #3 |
Участник
|
Спасибо
|
|
09.04.2008, 12:57 | #4 |
Участник
|
Цитата:
Сообщение от Andrew Akhmetov
X++: static void Job59(Args _args) { SysMailer mailer = new SysMailer(); ; mailer.SMTPRelayServers().add("post",25, "post", "a.akhmetov", "pass"); mailer.fromAddress("[EMAIL="zbg1@somehost.ru"]zbg1@somehost.ru[/EMAIL]"); mailer.fromName("name"); mailer.subject("test"); mailer.tos().add([EMAIL="zbg@mail.ru"]zbg@mail.ru[/EMAIL]); mailer.htmlbody("1111111"); mailer.sendMail(); } Метод 'SendMail' в COM-объекте класса 'Dundas.mailer' возвратил код ошибки 0x80004005 (E_FAIL), который означает: The HELLO command failed. на форуме уже пытались решать проблему но так видимо и не решили. Заранее спасибо |
|
09.04.2008, 13:24 | #5 |
Участник
|
SysMailer вроде создает экземпляр COM-объекта класса 'Dundas.mailer' в методе new(). Если бы dll-ка была незарегистрирована, ошибка вылезла бы в самом начале job'а, а не при попытке вызова метода sendMail()
|
|