
Microsoft OutlookはWindowsおよびMacオペレーティングシステムで利用可能です。 Outlook for MacとOutlook for Windowsは、ユーザーのメールをデータファイルに保存します。これらのデータファイルは、すべてのメール、連絡先、タスク、メモ、およびカレンダー項目で構成されています。 Outlook for MacはOLMファイルにメールボックスアイテムを保持しますが、これはOutlook for Windowsではサポートされていません。したがって、Outlook for Mac(OLM)ファイルをOutlook for Windowsで開くことはできません。Outlook for MacからOutlook for Windowsにメールボックスを移行する場合は、Outlook for MacのOLMファイルをOutlook PSTファイル形式に変換する必要があります。 この記事では、C#でOLMファイルをPSTファイルにプログラム的に変換する方法について説明します。
この記事では以下のトピックが取り上げられます:
C# APIを使用してOLMをPSTに変換する
OLMをPSTに変換するには、Aspose.Email for .NETを使用します。これは、メールを操作し、ThunderbirdやOutlookなどの一般的なメールクライアントのファイル形式で作業するためのメール処理APIです。こちらからAPIのDLLをダウンロードするか、以下のコマンドを使用してNuGetからインストールできます。
PM> Install-Package Aspose.Email
OLMをPSTに変換する手順
次の手順に従ってOLMファイルをPSTに変換できます:
- 新しいPSTファイルを作成し、書き込み用に開く
- ソースOLMファイルを開く
- OLMから各メールボックスアイテムを読み取り、それをPSTに書き込む
次のセクションでは、これらの手順をC#に変換し、OLMからPSTにファイルを変換する方法について説明します。
C#を使用してプログラム的にOLMをPSTに変換する
以下の手順に従って、C#でOLMをPSTにプログラム的に変換できます:
- まず、OlmStorageクラスのインスタンスを作成してソースOLMを開きます。
- 次に、Createメソッドを使用して新しいPSTファイルを作成します。
- さらに、メッセージクラスをフォルダクラスにマッピングする
GetContainerClass
関数を作成し、メッセージクラスに対応するコンテナクラスを持つPSTフォルダを作成できるようにします。 - 最後に、EnumerateMapiMessagesメソッドを使用してOLMから各フォルダとそのメッセージを再帰的に読み取り、AddSubFolderおよびAddMessageメソッドを使用して同じ順序でPSTに追加する
AddToPst
関数を作成します。
以下のコードサンプルは、C#でOLMをPSTに変換する方法を示しています。
メインメソッド:
GetContainerClass関数:
AddToPst関数:
無料APIライセンスを取得する
無料の一時ライセンスを使用して、評価制限なしにAspose.Email for .NETを使用できます。
結論
この記事では、C# .NETでOLMをPSTに変換する方法を学びました。また、OLMストレージからメッセージを読み取り、アイテムをPSTストレージにプログラム的に書き込む方法も見ました。それに加えて、ドキュメントを訪れてAspose.Email for .NETの他の機能を探ることができます。質問がある場合は、フォーラムに投稿できます。