WebDav を使用して Exchange Server のメールボックスからメッセージを保存

本稿では、Exchange Server のメールボックスからメッセージを取得し、EML および MSG 形式でディスクに保存する方法を示します。

Exchange Server のメールボックスからメッセージを EML で保存

メッセージを取得し、EML 形式で保存するには:

  1. インスタンスを作成します ExchangeClient クラス。
  2. サーバー名、ユーザー名、パスワード、ドメインを提供します。
  3. 呼び出す ExchangeClient.listMessages() メソッドはインスタンスを取得します。 ExchangeMessagesInfoCollection コレクション。
  4. ループで回す ExchangeMessagesInfoCollection 各メッセージのユニーク URI を取得するコレクション。
  5. 呼び出す ExchangeClient.saveMessage() メソッドを提供し、ユニーク URI をパラメータとして渡します。
  6. 提供する saveMessage() ファイルを保存したいパスを指定するメソッド。  

メッセージを OutputStream に保存

EML ファイルをディスクに保存する代わりに、OutputStream に保存することも可能です。これは、データベースなどのストレージにストリームを保存したい場合に便利です。ストリームがデータベースに保存されたら、EML ファイルを再度ロードできます。 MailMessage クラス。

以下のコードスニペットは、Exchange Server のメールボックスからメッセージをメモリストリームに保存します。

MSG形式でメッセージを保存

この ExchangeClient.saveMessage() メソッドはメッセージを直接EML形式で保存できます。MSG形式でメッセージを保存するには、まず、呼び出します。 ExchangeClient.fetchMessage() インスタンスを返すメソッド MailMessage クラス。その後、呼び出します。 MailMessage.save() メッセージを MSG に保存するメソッド。

以下のコードスニペットは、Exchange Server のメールボックスからメッセージを取得し、MSG 形式で保存します。