Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Отправить Email через Outlook

Delphi , Интернет и Сети , Почтовый клиент

Отправить Email через Outlook

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

uses
   ComObj;

 procedure TForm1.Button16Click(Sender: TObject);
 const
   olMailItem = 0;
   olByValue = 1;
 var
   OutlookApp, MailItem, MyAttachments: OLEVariant;
 begin
   try
     OutlookApp := GetActiveOleObject('Outlook.Application');
   except
     OutlookApp := CreateOleObject('Outlook.Application');
   end;
   try
     MailItem := OutlookApp.CreateItem(olMailItem);
     MailItem.Recipients.Add('YourMailAddress@something.com');
     MailItem.Subject := 'Your Subject';
     MailItem.Body    := 'Your Message';
     myAttachments    := MailItem.Attachments;
     myAttachments.Add('C:\SomeFile.txt', olByValue, 1, 'Name of Attachment');
     MailItem.Send;
   finally
     myAttachments := VarNull;
     OutlookApp    := VarNull;
   end;
 end;

Программный код на языке Delphi для отправки электронной почты с помощью Microsoft Outlook:

Импортируемые модули и процедуры

Код начинается с импорта модуля ComObj, который обеспечивает поддержку автоматизации COM (Component Object Model) в Delphi.

Процедура TForm1.Button16Click вызывается при клике кнопки с ID 16. Эта процедура отправляет электронную почту с помощью Outlook.

Создание объекта Outlook

Код пытается получить активный экземпляр приложения Outlook, используя GetActiveOleObject('Outlook.Application'). Если это не удается, создает новый экземпляр, используя CreateOleObject('Outlook.Application').

Создание и настройка электронной почты

После получения приложения Outlook код создает новую электронную почту, используя MailItem := OutlookApp.CreateItem(olMailItem), где olMailItem - константа, представляющая электронную почту.

Адрес получателя электронной почты устанавливается с помощью MailItem.Recipients.Add('YourMailAddress@something.com'). Тема и текст электронной почты также устанавливаются с помощью MailItem.Subject := 'Your Subject' и MailItem.Body := 'Your Message', соответственно.

Вложения

Код добавляет вложение к электронной почте, используя myAttachments.Add('C:\SomeFile.txt', olByValue, 1, 'Name of Attachment'). Здесь myAttachments - переменная типа OLEVariant, представляющая вложения электронной почты. Параметры, передаваемые в Add, следующие:

  • 'C:\SomeFile.txt': путь к файлу для добавления
  • olByValue: константа, представляющая тип вложения (в этом случае, файл)
  • 1: целочисленное значение, представляющее количество копий (в этом случае, 1)
  • 'Name of Attachment': имя, которое будет дано вложению

Отправка электронной почты и очистка

Наконец, код отправляет электронную почту с помощью MailItem.Send, а затем освобождает любые системные ресурсы, используемые приложением Outlook и вложениями, используя myAttachments := VarNull и OutlookApp := VarNull.

Примечания

  • Местащетки YourMailAddress@something.com и 'Your Subject' должны быть заменены вашим реальным адресом электронной почты и темой, соответственно.
  • Местащетка 'C:\SomeFile.txt' должна быть заменена путём к файлу, который вы хотите добавить в электронную почту.
  • Этот код предполагает, что Outlook установлен на системе и правильно настроен. Если Outlook не установлен или неправильно настроен, этот код может не работать.

Альтернативное решение

Если у вас нет доступа к Microsoft Outlook или вы предпочитаете более лёгкое решение, вы можете использовать третьестороннюю библиотеку электронной почты для Delphi,such as TMail or Indy, которые позволяют отправлять электронные письма программно без зависимости от внешнего приложения, такого как Outlook.

Статья описывает шаги по отправке электронной почты через приложение Microsoft Outlook с помощью языка программирования Delphi, используя библиотеку ComObj.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Почтовый клиент ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-10-24 20:01:35/0.0036230087280273/0