• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Почтовая компонента

  • Автор темы xmailer
  • Дата начала
X

xmailer

Среда разработки: Delphi 6 (использование mapi)
Почтовый клиент: Outlook Express
1С версия: 7.7
Использование: контролируемая пользователем отправление письма, вывод почтовым клиентом заготовку нового письма, с вложением и первично указанным адресом, темой, телом сообщения. Типа операции в проводнике при отправке адресату нескольких файлов.
Цель публикации на форуме: отладка компонента, ну и Мурманск for ever.
Исходники компонента: по запросу по электронке

Пример использования:
Код:
// Запись текстового файла
ИмяФайла = КаталогВременныхФайлов()+"Тест.txt";
тмпТекст = СоздатьОбъект("Текст");
тмпТекст.ДобавитьСтроку("Привет из Мурманска");
тмпТекст.Записать(ИмяФайла);

outlook_dll = LoadAddin("mapi_outlook.dll"); 
Если outlook_dll = 1 Тогда
outlook = CreateObject("AddIn.Outlook");	
Иначе
Сообщить("Компонента Outlook не загружена, файл mapi_outlook.dll не найден","!");
Возврат;
КонецЕсли;		

АдресПолучателя = СокрЛП(Док.Контрагент.ЭлПочта);
Если ПустоеЗначение(АдресПолучателя) = 1 Тогда
АдресПолучателя = "Укажите адресата";
КонецЕсли;		

ТемаПисьма = "Тестим mapi_outlook.dll";
ТелоПисьма = "Тестим mapi_outlook.dll";

// atatch файлов
outlook.Attach(ИмяФайла);
// вывод диалога
outlook.Send(АдресПолучателя, ТемаПисьма, ТелоПисьма);
 

Вложения

  • mapi_outlook.zip
    232,4 КБ · Просмотры: 200
L

LSH

Для: xmailer

Извините за оффтоп, но зачем изобретать велосипед?
Есть V7Plus которая в числе прочего умеет работать с аутлуком.
Поясните пожалуйста, в чем отличие в использовании вашей компоненты от В7Плюс?
 
X

xmailer

принципиальных отличий нет, разве что метод V7Mail.Подключиться(...) вызывает операцию проверки почтового ящика, а mapi_outlook.Send(...) готовит лишь заготовку нового письма и ждет дальнейшей действий пользователя. Правда к моему стыду делая компоненту я не зная о данной функциональности v7plus, возможно не стал бы и вовсе разрабатывать велосипед.
 
P

Pro

Для: xmailer
вопрос такой jenker должен быть настроен или можно без него?
 
X

xmailer

вопрос такой jenker должен быть настроен или можно без него?
Должен быть настроен. Кстати в компоненте ситуация с отсутствием настроек не обрабатывается, просто ничего не происходит. Учту, внесу поправки в код dll-ки
 
P

Pro

а как сделать отправку почты из 1С без доп настроек почтовых клиентов, грубо говоря хочется сделать так что прайс рассылается с одного типа мыла, а электронный вид накладной с почты юзера который ее выписал, а 1С работает в терминале...
 
X

xmailer

а как сделать отправку почты из 1С без доп настроек почтовых клиентов, грубо говоря хочется сделать так что прайс рассылается с одного типа мыла, а электронный вид накладной с почты юзера который ее выписал, а 1С работает в терминале...
в текущей версии никак, сегодня-завтра сделаю новую версию с учетом пожелания
 
X

xmailer

В связи с ограниченностью и глючностью функционала mapi в отношении работы с OutlookExpress, компонент будет существовать только в таком виде.
а как сделать отправку почты из 1С без доп настроек почтовых клиентов, грубо говоря хочется сделать так что прайс рассылается с одного типа мыла, а электронный вид накладной с почты юзера который ее выписал, а 1С работает в терминале...
MAPI:
- нет возможности автосоздание учетных записей в текущем почтовом клиенте
- в OutlookExpress при создании новой сессии для определенной учетной записи используется не указанная учетная запись, а установленная по умолчанию в почтовике, документированная беда mapi+OutlookExpress.

Возможные варианты:
-создание своего почтового клиента на базе 1С с использованием внешних компонент для отправки(Nidan) и отправки/получения(ROM-Mail) почты
-создание почтового клиента на базе Delphi разработка интерфейсов доступа к данному клиенту из 1С
 
V

vitfil

Господа изобретатели велосипедов, чем вас не устраивает tmail и командная строка?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!