все что связано с моей работой
Главная » Програмирование » SendMail. Часть 1

SendMail. Часть 1

 

Задача. Нужна утилита для отправки файла из командной строки. Мини аналог mail из  *nix-ов.

Условия:

  1. “Лицензионно чистое” приложение ( Lazarus )
  2. возможность в параметрах указать кому, тему, тело письма, вложить файл и от кого, сервер, порт, имя пользователя, пароль
  3. предусмотреть вариант для формирования от кого, по заданным параметрам

Первый пункт – понятно, т.к. по сути это есть переход с Delphi на свободное ПО, поэтому и Lazarus.

Второй пункт.

Ключ Переменная Описание
-S Server SMTP сервер
-U UserName Имя пользователя
-P Password пароль
-p Port Порт
-r Reciepient Получатель (кому). может быть несколько
-s Subject Тема сообщения (длинна <=255)
-b Body Тело письма, одной строкой
-f BodyFileName Тело письма вставляемое из текстового файла
-a AttachedFileName Имя файла, который вкладываем в письмо

Этапы.

  1. получить параметры
  2. проверить доступность файлов, наличие обязательных параметров
  3. составить письмо
  4. Создать SMTP клиента
  5. подключить
  6. если все ОК, то отправить письмо
  7. отключить
  8. очистить созданные объекты

Варианты реализации. Можно использовать портированую библиотеку Indy, ускоряет процесс реализации, т.к. исходное приложение на Delphi было написано с использованием именно этой библиотеки. И второй вариант -  использовать “родную” для Lazarus-a библитеку Synapse.

В целях самообучения буду пытаться реализовать через Synapse.

Комментариев нет

No comments yet.

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.