5
6

Outlook のメールデータ:インポート・エクスポート

Last updated at Posted at 2019-07-05

Outlook からエクスポート

インターネット黎明期 (1995 年ぐらい?) から生き残っている Microsoft 製のメーラーの中で、異彩を放っているのが Outlook です。

メールデータの保管方法という観点からみると:

Outlook Express

  • Outlook Express は dbx という独自データベースを採用。
  • dbx は 2GB を超えると壊れてメールデータが無くなるという重大な不具合があり、騒ぎになりました。
  • dbx は解析が成功しているようで DbxRescue という有名なツールがあります。

Windows Live メール

  • Windows Live メールではデータベースに ESE を採用しています。ESE は ISAM エンジンの一種であり、OS のコンポーネントでもあるから信頼性が高いです。
  • データベースとは別に .eml ファイルを保存しています。
  • 実際のフォルダー階層にそって保存していることから、メーラーの移行は簡単にできます。 メーラーから見えるフォルダ階層と、ファイルシステムのフォルダ階層は異なることがあります。フォルダ作成後の「フォルダ名の変更」「フォルダの移動」操作は、データベース内の情報が書き変わるのみで、ファイルシステムのフォルダ階層には反映されませんでした。 .eml ファイルのみを用いてメーラーを移行する際には注意が必要です。

Outlook

そういう訳で Outlook からの脱出にあたって、役立つと思われるツールを紹介いたします:

Outlook Export Tool

Outlook Export Tool

Thunderbird

Thunderbird 58 以上で ツール設定とデータのインポートメールボックスOutlook

2021-12-14_21h09_21.png

2021-12-14_21h09_24.png

次へ をクリックすると、作業完了まで UI がフリーズします。気長に待ってください。

2021-12-14_21h09_58.png

ローカルフォルダーOutlook インポート にあります。

2021-12-14_21h11_20.png

こちらは、真偽不明の情報です。

Thunderbird のインポート手順を用いるには、Thunderbird バージョン 38 およびそれ以降のバージョンでは Outlook と Eudora 向けのインポートウィザードが無効化されているため、古いバージョンの Thunderbird を使用する必要があります。

Thunderbird への移行 | Thunderbird ヘルプ

技術的な側面

ソースコードの MapiApi.cpp をサラッと読みました。
MAPILogonEx からの IMAPISessionで、ガチの MAPI を叩いています。

Outlook へインポート

逆に「これから Outlook を使いたいので、他のメーラーからデータを引っ越しする」ことを想定して、ツールを探してみました。

Windows Live Mail

エクスポート機能で、Outlook にメールをエクスポートする機能があります。

ファイル電子メールのエクスポート電子メール メッセージ を選択します。

2021-12-14_21h31_45.png

Microsoft Exchange を選択します。

2021-12-14_21h31_52.png

2021-12-14_21h31_57.png

プロファイルを選択するようになっている場合は尋ねられます。

2021-12-14_21h32_04.png

2021-12-14_21h32_07.png

複数のフォルダーを選択する場合は、Ctrl 押下のマウス左クリックで On/Off 切り替えです。

2021-12-14_21h40_29.png

2021-12-14_21h32_11.png

Outlook の Outlook データ ファイル にできるようです。

2021-12-14_21h32_59.png

IMAP4 server 経由

mozillaZine の Import .pst files より。
IMAP4 サーバー (例えば hMailServer) を経由して、メールデータを移行する方法があります。

失敗例: 受信トレイへドロップする

方法:

  • .eml ファイルを 受信トレイ へドロップする。

結果:

  • 新規メールの作成画面が表示されて、.eml ファイルが添付されました。

2021-12-14_12h33_36.png

失敗例: フォルダーへドロップする

方法:

  • .eml ファイルを 受信トレイ 以外のフォルダーへドロップする。

結果:

  • フォルダーにメールは追加されました。
  • しかしプレビューには適さないようです。
    • プレビュー画面での表示: このファイルのプレビューを表示できません。このファイル形式のプレビューアーがインストールされていません。
    • ダブルクリックした際のプロンプト表示: ファイルを開く前に、ファイルが信頼できる所からのものであることを確認してください。

2021-12-14_12h35_41.png

2021-12-14_12h37_20.png

msg → eml ファイル

msg (Outlook が主に扱う) ファイルから eml (一般的なメーラーで扱う RFC822 形式) に変換する方法について検討します。

pst (Outlook が主に扱う) ファイルも出て来ますが「pst ファイルは msg ファイルが沢山入っているもの」と考えれば分かりやすいと思います。

(2024/08/15 追記)

3 層 (NDB 層 / LTP 層 / Messaging 層) 構造のデータベースです。参考:

(2022-11-21 追記)
.msg ファイルにはメール以外のデータ形式で格納している場合があるようです。具体的には連絡先、予定などです。
7-Zip などで .msg ファイルの中身を確認できるのであれば __substg1.0_001A001E をメモ帳で開くと MessageClass を確認できます。 IPM.Note であればメールです。
参考: Item Types and Message Classes | Microsoft Learn
連絡先が格納されているのであれば msg → vcard 変換の方が適切と思われます。
予定が格納されているのであれば msg → iCal 変換の方が適切と思われます。 (2022/11/26 追記)

ruby-msg

Google Code Archive - Long-term storage for Google Code Project Hosting.

紹介サイト

mfcmapi

Releases · stephenegriffin/mfcmapi

紹介サイト

libpst

libpst Utilities - Version 0.6.76

紹介サイト

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6