Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Классы и внешние компоненты. (число прочтений - 2020 )
stone
Junior Member
**
Отсутствует


нифига не понимаю...

Сообщений: 73
Зарегистрирован: 19. Июля 2006
Классы и внешние компоненты.
18. Декабря 2006 :: 10:44
Печать  
1С++ 2,5,0,0 найтбилд от 19-09-2006

Есть ВК SendMail. Есть класс, в котором определен метод для отправки писем на мыло:
[code]Функция ОтправитьПочтовоеСообщение(Получатель, Отправитель = "1C_ALERT@****.ru", Тема, Тело) Экспорт
     Если ПустоеЗначение(Получатель) = 1 Тогда
           Возврат "Не указан получатель";
     ИначеЕсли ПустаяСтрока(Тело) = 1 Тогда
           Возврат "Попытка отправить пустое сообщение";
     КонецЕсли;
     
     СписПолучателей = СтрЗаменить(Получатель, ",", РазделительСтрок);
     
     // создаём компоненту
     Попытка
           Состояние("Загрузка компоненты SendMail...");
           ЗагрузитьВнешнююКомпоненту(СокрЛП(Константа.КаталогИБ) + "bin\SendMail.dll");
           глСообщение = СоздатьОбъект("AddIn.SendMail");
           глСообщение.АдресПочтовогоСервера="192.168.119.2";
           глСообщение.ПочтовыйПользователь="";
           глСообщение.ИспользоватьQP=1;
           глСообщение.ИспользоватьHTML=1;
     Исключение
           Возврат "Ошибка при создании почтовой компоненты. Сообщения не были отправлены.";
     КонецПопытки;
           
     Ошибки = "";
     // отсылаем письма всем адресатам
     Для й = 1 по СтрКоличествоСтрок(СписПолучателей) Цикл
           текПолучатель = СокрЛП(СтрПолучитьСтроку(СписПолучателей, й));
           // здесь можно будет сделать проверку адреса е-мыла через регекспы
           
           Состояние("Отправка электронной почты "+СокрЛП(текПолучатель));
           //*****
           глСообщение.Получатель = текПолучатель;
           глСообщение.Отправитель = СокрЛП(Отправитель);
           глСообщение.Subject = СокрЛП(Тема);
           глСообщение.Сообщение = СокрЛП(Тело);
           //*****               
           Рез = СокрЛП(глСообщение.ОтправитьПочту());
           Если рез <> "0" Тогда
                 Ошибки = Ошибки + Рез + РазделительСтрок;
           КонецЕсли;
           
     КонецЦикла;
     
     Если ПустаяСтрока(Ошибки) = 1 Тогда
           Ошибки = "0";
     КонецЕсли;
           
                  
     Возврат Ошибки;
КонецФункции
[/code]

при запуске метода из класса - получаем ошибку "Error was occured while sending message".
при запуске копии метода из обработки - всё ок.

из-за чего может такое происходить? всю голову поломал уже =(


зы - на всякий случай http://padre2kk.googlepages.com/SendMail.dll
  
Наверх
GTalkICQ  
IP записан
 
stone
Junior Member
**
Отсутствует


нифига не понимаю...

Сообщений: 73
Зарегистрирован: 19. Июля 2006
Re: Классы и внешние компоненты.
Ответ #1 - 18. Декабря 2006 :: 11:57
Печать  
вопрос снят.
вылечилось описание метода в defcls
  
Наверх
GTalkICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать