Outlook テンプレート、署名メッセージ、カテゴリの管理

Outlook テンプレート(OFT)ファイルの読み書き

Outlookテンプレート は、再利用可能なメールファイル(.oft)で、同様または定期的なメッセージの送信を自動化します。毎回同じ内容を書き直す代わりに、保存されたテンプレートを開き、詳細を更新し、すぐに送信できます。

Aspose.Email for C++ を使用すると、OFTテンプレートを次の方法でロードおよび変更できます。 MailMessage クラスです。ロード後、送信者、受信者、件名、本文などのフィールドを更新でき、次のいずれかを実行できます:

  • SmtpClient クラスを使用して、更新されたメッセージを送信するか、
  • Microsoft Outlookでさらに編集または検証できるように、MSGファイルとして保存します。

次のコードサンプルは、Outlookメールテンプレート(OFTファイル)をロードし、送信者と受信者の詳細を変更し、プレースホルダーを特定の値に置き換えてメール内容をパーソナライズし、未送信フラグを設定したOutlook MSGファイルとして更新されたメッセージを保存する方法を示しています。

デジタル署名済み(S/MIME)メッセージの管理

EML から MSG に変換する際に署名を保持

Aspose.Email は S/MIME 操作を完全にサポートし、署名の完全性を損なうことなくデジタル署名されたメッセージを保存または変換できます。API は、EML から MSG への変換時に署名を保持するための 2 つのメソッドを提供します。

1. S/MIME 署名を自動的に保持

  1. EML ファイルを次で読み込みます: MailMessage::Load()。MIME構造(ヘッダー、本文パート、添付ファイル、署名)を解析します。
  2. 以下を呼び出して MSG として保存 Save()SaveOptions::get_DefaultMsgUnicode()。これにより、メッセージ層構造と内容の完全性を保ちつつ、Unicode MSG フォーマットが自動的に構築されます。

元のメッセージに S/MIME デジタル署名が含まれている場合、特別な添付ファイルとして認識され、結果の MSG ファイル内で保持されます。

本文の再フォーマットは行われず、署名が有効なまま保たれます。

2. 制御された変換

このアプローチは、MIME ベースのメッセージを MAPI ベースのメッセージ表現に明示的に変換する 2 段階プロセスを使用します。

  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 データを保持したまま変換したり、添付ファイルを別の方法で管理したり、複雑な Outlook/MAPI ワークフローに MSG 作成を統合したりする際に便利です。深層レベルの操作のために 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 メッセージの受信者プロパティから取得する方法を示します。