AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.09.2008, 14:18   #1  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Отправка почты
Пытаюсь послать письмо из Axapt-ы.
Сам себе на свой ящик.
X++:
static void Job25(Args _args)
{
    SysMailer mailer = new SysMailer();
    ;
    mailer.SMTPRelayServers().add("inbox.ru",25, "inbox.ru", "kolosov@inbox.ru", "pass");

    mailer.fromAddress("kolosov@inbox.ru");
    mailer.fromName("name");
    mailer.subject("test");
    mailer.tos().add("kolosov@inbox.ru");

    mailer.sendMail();
}
Пробовал и inbox.ru и smtp.inbox.ru, как написано
http://mail.ru/pages/help/2.html#2333
Не получается.
Что я делаю не так?
Старый 05.09.2008, 14:51   #2  
custtable is offline
custtable
Участник
Аватар для custtable
 
29 / 10 (1) +
Регистрация: 28.08.2006
Добрый день!

Возможно дело в СМТП аутентификации на сервере. Я в свое время когда-то тоже долго мучался, пока снифером не отловил, что сервер меня посылал...
Старый 05.09.2008, 15:03   #3  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от custtable Посмотреть сообщение
пока снифером не отловил, что сервер меня посылал...
И как решили проблему?
Старый 05.09.2008, 15:17   #4  
custtable is offline
custtable
Участник
Аватар для custtable
 
29 / 10 (1) +
Регистрация: 28.08.2006
я использовал COM обект CDO.

вот ссылка на тему
E-mail в Аксапте 3.0 с помощью CDO.Message COM объекта
Старый 05.09.2008, 15:28   #5  
custtable is offline
custtable
Участник
Аватар для custtable
 
29 / 10 (1) +
Регистрация: 28.08.2006
X++:
static void sendCDOMessage(Args _args)
{
        COM mailer, config, fields;
        COM item_SendUsing, item_SMTPServer, item_smtpserverport;
        COM item_SMTPAuthenticate, item_SMTPUsername, item_SMTPPassword;
    
        COMVariant comSendUsing = new COMVariant();
        COMVariant comSMTPServer = new COMVariant();
        COMVariant comSMTPServerPort = new COMVariant();
        COMVariant comSMTPAuthenticate = new COMVariant();
        COMVariant comSMTPUsername = new COMVariant();
        COMVariant comSMTPPassword = new COMVariant();
        ;
    
        mailer = new COM("CDO.Message");
        config = new COM("CDO.Configuration");
    
        config = mailer.configuration();
        fields = config.Fields();
    
        item_SendUsing = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing");
        comSendUsing.int(2);
        item_SendUsing.Value(comSendUsing);
    
        item_smtpserver = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver");
        comSMTPServer.bStr('smtp.server.com');
        item_SMTPServer.Value(comSMTPServer);
    
        item_SMTPServerPort = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport");
        comSMTPServerPort.int(25);
        item_SMTPServerPort.Value(comSMTPServerPort);
    
        item_SMTPAuthenticate = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate");
        comSMTPAuthenticate.int(1); // 1 for true, DO authenticate
        item_SMTPAuthenticate.Value(comSMTPAuthenticate);
    
        item_SMTPUsername = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername");
        comSMTPUsername.bStr('userId');
        item_SMTPUsername.Value(comSMTPUsername);
    
        item_SMTPPassword = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword");
        comSMTPPassword.bStr('password');
        item_SMTPPassword.Value(comSMTPPassword);
    
        fields.update();
    
        mailer.Configuration(config);
    
        mailer.From("somebody@somewhere.com");
        mailer.To("somebody@somewhere.com");
        mailer.Subject("Subject");
        mailer.TextBody("Body");
    
        mailer.Send();
    
        mailer = null;
}
Старый 05.09.2008, 14:54   #6  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
X++:
mailer.SMTPRelayServers().add("inbox.ru"...
Здесь первым указывается имя smtp сервера, smtp.mail.ru
+ попробуйте поменять порт на 2525. Вот рабочий код, только что проверил.
X++:
static void Job9(Args _args)
{
    SysMailer mailer = new SysMailer();
    ;
    mailer.SMTPRelayServers().add("smtp.mail.ru", 2525, "mail.ru", "Login", "Pass");

    mailer.fromAddress("From@mail.ru");
    mailer.fromName("Name");
    mailer.subject("Test");
    mailer.tos().add("To@mail.ru");

    mailer.sendMail();
}
+ для примера смотрите класс SysEMailBatch
Старый 05.09.2008, 15:03   #7  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от DSPIC Посмотреть сообщение
X++:
mailer.SMTPRelayServers().add("inbox.ru"...
Здесь первым указывается имя smtp сервера, smtp.mail.ru
+ попробуйте поменять порт на 2525. Вот рабочий код, только что проверил.
Всё равно не отсылается.
Старый 05.09.2008, 15:17   #8  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
Вот ещё вариант для теста.
1. Натройте в аутлуке (у меня 2k3) учетную запись с которой отправляете емаил, проверьте - работает ли он.
2. Переделайте и запустите джобец:
X++:
static void Job10(Args _args)
{
    SysEMailBatch   sysEMailBatch = SysEMailBatch::construct();
    ;

    sysEMailBatch.parmEmailAddr("To@list.ru");

    sysEMailBatch.parmMessageBody("Hello, this is test");

    sysEMailBatch.parmPriority(1);

    sysEMailBatch.parmSenderAddr("From@mail.ru");

    sysEMailBatch.parmSendername("Evgeny");

    sysEMailBatch.parmSubject("Test");

    if (sysEMailBatch.prompt())
    {
        sysEMailBatch.run();
    }
}
За это сообщение автора поблагодарили: lev (1), miklenew (3).
Старый 05.09.2008, 16:26   #9  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Цитата:
Сообщение от DSPIC Посмотреть сообщение
Вот ещё вариант для теста.
Спасибо.
Похоже это у нас админы всё поназакрывали.
Не получается ящик внешний подсоединить в outlook-у.
Но с внутреннего письмо отослалось.
Дома проверю.
Старый 07.09.2008, 20:05   #10  
lego_99 is offline
lego_99
Участник
 
10 / 10 (1) +
Регистрация: 21.11.2004
Адрес: Moscow
Точно говорю - в офисе доступ к внешней почте перекрыт по портам. Проверял.
Админы включать пока не планируют.
Старый 07.09.2008, 23:07   #11  
miklenew is offline
miklenew
Участник
Аватар для miklenew
MCBMSS
1C
Лучший по профессии 2009
 
1,688 / 433 (18) +++++++
Регистрация: 10.07.2006
Адрес: г. Ликино-Дулёво
Дома попробовал.
Заработало. С 25 портом.
Правда не сразу.
Сначало outlook пришлось настройть.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Использование изображения в шаблоне электронной почты Vhaldemar DAX: Программирование 8 07.06.2012 18:04
Отправка почты через Outlook... lev DAX: Программирование 9 12.12.2008 13:27
CRM:отправка почты на Outlook fialka DAX: Функционал 2 17.06.2008 16:09
Отправка почты: ошибка с SysInetMailer axapta25Dev DAX: Программирование 20 11.03.2008 14:53
Параметры почты - не работает... soin DAX: Функционал 3 09.01.2004 01:00

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:49.