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" というカスタムフォルダーにアクセスし、そのフォルダー内のすべてのメッセージを表示します。このタスクを実行するには、以下の手順を行います:
- 初期化します。 IEWSClient 有効な資格情報を提供することでオブジェクトが取得できます。
- デフォルトのメールボックスにアクセスします。
- この例では親フォルダーは INBOX です。親フォルダーはカスタムフォルダーになる場合もあります。
- 使用する FolderExists() 指定されたカスタムサブフォルダー(例: "TestInbox")を検索するメソッドです。"TestInbox" の URI が返されます。
- この 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この記事では、共有フォルダーにアクセスできるすべてのユーザーに対して、パブリックフォルダーに適用された権限を取得する方法を示します。
このタスクを実行するには:
- 初期化します。 IEWSClient.
- 使用する ListPublicFolders すべてのパブリックフォルダーの一覧を取得するために
- フォルダーに関連付けられた権限を取得するには、次を使用します GetFolderPermissions() メソッド
以下のコードスニペットは、使用方法を示しています。 IEWSClient フォルダーに適用された権限を取得するクラスです。
フォルダーとサブフォルダーの作成
Aspose.Email API は、Exchange メールボックスにフォルダーを作成する機能を提供します。 CreateFolder メソッド IEWSClient この目的に使用できます。Exchange サーバーのメールボックスにフォルダーを作成するには、以下の手順を使用します。
- インスタンスを作成する IEWSClient.
- 設定します set_UseSlashAsFolderSeparator 必要に応じてプロパティを設定します。true に設定すると、アプリケーションは「スラッシュ」をフォルダー区切り文字として認識し、スラッシュの後にサブフォルダーが作成されます。
- 使用する CreateFolder フォルダーを作成するメソッド。
以下のコードスニペットは、フォルダーとサブフォルダーを作成する方法を示しています。
Exchange フォルダーを PST にバックアップ
ユーザーがメールボックスのすべてまたは一部のフォルダーのバックアップを取りたくなることはよくあります。Aspose.Email は、すべてまたは指定した Exchange メールボックスフォルダーを PST にバックアップする機能を提供します。Exchange サーバーのフォルダーをバックアップするには、以下の手順に従います。
- インスタンスを作成する IEWSClient.
- 必要なフォルダー情報を追加する ExchangeFolderInfoCollection
- 使用する IEWSClient->Backup フォルダーの内容を PST にエクスポートするメソッド
以下のコードスニペットは、Exchange フォルダーを PST にバックアップする方法を示しています。