Управление шаблонами Outlook, подписанными сообщениями и категориями

Чтение и запись файлов шаблонов Outlook (OFT)

Шаблоны Outlook — это переиспользуемые файлы письма (.oft), которые помогают автоматизировать отправку похожих или повторяющихся сообщений. Вместо того чтобы каждый раз переписывать одно и то же, вы можете открыть сохранённый шаблон, обновить детали и сразу отправить его.

С помощью Aspose.Email for C++ вы можете загружать и изменять шаблоны OFT через MailMessage класс. После загрузки вы можете обновить поля, такие как отправитель, получатель, тема и тело, а затем либо:

  • Отправьте обновлённое сообщение с помощью класса SmtpClient или
  • Сохраните его как файл MSG для дальнейшего редактирования или проверки в Microsoft Outlook.

Следующий пример кода демонстрирует, как загрузить шаблон письма Outlook (файл OFT), изменить данные отправителя и получателя, персонализировать содержание письма, заменив заполнители конкретными значениями, а затем сохранить обновлённое сообщение как файл Outlook MSG с установленным флагом «не отправлено».

Управление цифровыми подписанными (S/MIME) сообщениями

Сохранение подписи при конвертации EML в MSG

Aspose.Email полностью поддерживает операции S/MIME, позволяя сохранять или конвертировать цифрово подписанные сообщения без нарушения целостности подписи. API предоставляет два метода для сохранения подписи при конвертации из EML в MSG.

1. Автоматическое сохранение подписи S/MIME

  1. Загрузите файл EML с помощью MailMessage::Load(). Он разбирает структуру MIME: заголовки, части тела, вложения, подписи.
  2. Сохранить как MSG, вызвав Save() с SaveOptions::get_DefaultMsgUnicode(). Это автоматически формирует MSG в формате Unicode, сохраняя иерархию сообщения и целостность содержимого.

Если оригинальное сообщение содержит цифровую подпись S/MIME, она распознаётся и сохраняется как специальное вложение в результирующем файле MSG.

Тело письма не переоформляется, что гарантирует сохранность подписи.

2. Управляемая конвертация

Этот подход использует двухэтапный процесс, который явно преобразует сообщение на базе MIME в представление сообщения на базе MAPI.

  1. Загрузите файл EML с помощью MailMessage::Load(). Он разбирает EML в объектную модель MIME с заголовками, частями тела и вложениями.
  2. Преобразовать в сообщение MAPI с помощью MapiMessage::FromMailMessage().
  3. Настроить MapiConversionOptions:
    • Задать кодировку вывода (ANSI/Unicode).
    • Выбрать формат сообщения.
    • Сохранять вложения TNEF при необходимости.
    • Включать или сохранять цифровые подписи.
    • Определить формат тела (обычный текст, RTF, HTML).
  4. Включить PreserveSignature = true чтобы сохранить подпись S/MIME нетронутой. Это внедряет MIME‑часть подписи (application/pkcs7-mime или pkcs7-signature) без декодирования или переупаковки.
  5. Сохраните полученное сообщение MAPI как файл MSG, сохраняя все свойства и подписи.

Используйте этот метод для настройки формата тела сообщения, кодировки и обработки вложений. Он полезен при конвертации с сохранением данных TNEF, различном управлении вложениями или интеграции создания MSG в сложные рабочие процессы Outlook/MAPI. Он предоставляет доступ к набору свойств MAPI для глубокой манипуляции.

Установка цветовых категорий для файлов Outlook MSG

Цветовые категории помогают организовать письма в Outlook. Aspose.Email предоставляет FollowUpManager класс и некоторые функции для управления этими категориями:

  • AddCategory принимает MapiMessage и строку цветовой категории, например "Purple Category" или "Red Category" в качестве аргументов.
  • RemoveCategory принимает MapiMessage и строка цветовой категории, которую нужно удалить из сообщения.
  • ClearCategories() используется для удаления всех цветовых категорий из сообщения.
  • GetCategories используется для получения всех цветовых категорий из конкретного сообщения.

Следующий пример кода демонстрирует, как загрузить файл Outlook MSG, добавить к сообщению цветовые категории, получить и отобразить его существующие категории, а затем удалить определённые категории или очистить все категории, используя FollowUpManager.

Доступ к информации о последующей обработке в файлах MSG

Aspose.Email может извлекать уведомления о прочтении, уведомления о доставке и результаты голосования из сообщений Outlook.

Следующий пример кода демонстрирует, как прочитать файл Outlook MSG и пройтись по получателям, отображая детальную информацию отслеживания. В частности, показывается как получить отображаемое имя каждого получателя, время доставки сообщения этому получателю и время, когда получатель прочитал сообщение, извлекая эти свойства из свойств получателя MAPI‑сообщения.