Exchange Server のフォルダー操作

サーバーからすべてのフォルダーを一覧表示

Aspose.Email API は、Exchange Server に接続し、すべてのフォルダーとサブフォルダーを一覧表示する機能を提供します。また、各フォルダーからサブフォルダーを再帰的に取得することもできます。さらに、Exchange Web Service (EWS) を使用したページングによるフォルダー列挙機能も提供します。この記事では、Exchange サーバーからすべてのサブフォルダーを取得し、ページングでフォルダーを取得する方法を示します。

以下のコードスニペットは、Exchange Server からフォルダーを一覧表示する方法を示します。

EWS を使用したフォルダー種別情報の取得

この ExchangeFolderType が提供する列挙子 ExchangeFolderInfo クラスはフォルダーの種類に関する情報を取得するために使用できます。以下のコードサンプルに示すようにです。

EWS を使用したページングサポートによるフォルダー列挙

以下のコードスニペットは、EWS でページングサポートを使用する方法を示しています。

メールボックスのカスタムフォルダーまたはサブフォルダーへのアクセス

IEWSClient 開発者がメールボックスから任意のカスタムフォルダーまたはサブフォルダーにアクセスできるようにします。 FolderExists() メソッド IEWSClient 指定されたカスタムフォルダー/サブフォルダーの URI を返し、それを使用して対象フォルダーにアクセスできます。以下の例では、INBOX の下に作成された "TestInbox" というカスタムフォルダーにアクセスし、そのフォルダー内のすべてのメッセージを表示します。このタスクを実行するには、以下の手順を行います:

  1. 初期化します。 IEWSClient 有効な資格情報を提供することでオブジェクトが取得できます。
  2. デフォルトのメールボックスにアクセスします。
  3. この例では親フォルダーは INBOX です。親フォルダーはカスタムフォルダーになる場合もあります。
  4. 使用する FolderExists() 指定されたカスタムサブフォルダー(例: "TestInbox")を検索するメソッドです。"TestInbox" の URI が返されます。
  5. この URI を使用して、そのカスタムフォルダー内のすべてのメッセージにアクセスします。

以下のコードスニペットは、EWS を使用してメールボックスのカスタムフォルダーまたはサブフォルダーにアクセスする方法を示しています。

パブリックフォルダーの一覧表示

Microsoft Exchange Server はユーザーがパブリックフォルダーを作成し、その中にメッセージを投稿できるようにします。アプリケーションからこれを行うには、以下を使用します。 EWSClient Exchange Server に接続し、パブリックフォルダーからメッセージや投稿を読み取りダウンロードするクラスです。以下のコードスニペットは、すべてのパブリックフォルダーとサブフォルダーを読み取り、これらのフォルダー内に見つかったメッセージを一覧表示およびダウンロードする方法を示しています。この例は、EWS をサポートしている Microsoft Exchange Server 2007 以降でのみ動作します。

フォルダー項目の同期

Aspose.Email API の IEWSClient Exchange フォルダーの内容を同期する機能を提供します。 SyncFolder が公開するメソッド IEWSClient 指定したフォルダーのフォルダー情報を同期するために使用できるクラスです。以下のコードスニペットは、Exchange フォルダー情報を同期する方法を示しています。

Exchange フォルダーの権限取得

ユーザーには Exchange Server のパブリックフォルダーへの権限が割り当てられ、これによりユーザーがこれらのフォルダーに持つアクセスレベルが制限/決定されます。ExchangeFolderPermission クラスは、permission level やアイテムの作成可否、削除可否、その他権限プロパティで指定されたタスクなど、Exchange フォルダーに対する権限プロパティのセットを提供します。権限は以下を使用して取得できます。 GetFolderPermissions() メソッド IEWSClientこの記事では、共有フォルダーにアクセスできるすべてのユーザーに対して、パブリックフォルダーに適用された権限を取得する方法を示します。

このタスクを実行するには:

  1. 初期化します。 IEWSClient.
  2. 使用する ListPublicFolders すべてのパブリックフォルダーの一覧を取得するために
  3. フォルダーに関連付けられた権限を取得するには、次を使用します GetFolderPermissions() メソッド

以下のコードスニペットは、使用方法を示しています。 IEWSClient フォルダーに適用された権限を取得するクラスです。

フォルダーとサブフォルダーの作成

Aspose.Email API は、Exchange メールボックスにフォルダーを作成する機能を提供します。 CreateFolder メソッド IEWSClient この目的に使用できます。Exchange サーバーのメールボックスにフォルダーを作成するには、以下の手順を使用します。

  1. インスタンスを作成する IEWSClient.
  2. 設定します set_UseSlashAsFolderSeparator 必要に応じてプロパティを設定します。true に設定すると、アプリケーションは「スラッシュ」をフォルダー区切り文字として認識し、スラッシュの後にサブフォルダーが作成されます。
  3. 使用する CreateFolder フォルダーを作成するメソッド。

以下のコードスニペットは、フォルダーとサブフォルダーを作成する方法を示しています。

Exchange フォルダーを PST にバックアップ

ユーザーがメールボックスのすべてまたは一部のフォルダーのバックアップを取りたくなることはよくあります。Aspose.Email は、すべてまたは指定した Exchange メールボックスフォルダーを PST にバックアップする機能を提供します。Exchange サーバーのフォルダーをバックアップするには、以下の手順に従います。

  1. インスタンスを作成する IEWSClient.
  2. 必要なフォルダー情報を追加する ExchangeFolderInfoCollection
  3. 使用する IEWSClient->Backup フォルダーの内容を PST にエクスポートするメソッド

以下のコードスニペットは、Exchange フォルダーを PST にバックアップする方法を示しています。