這幾天公司同事使用 Outlook Express 寄郵件給我。郵件的附夾檔為許多的 .eml 檔案。也就是把一堆 email 以附加檔案的方式轉寄。

在以前,當我開啟時會自動將所有附加的 .eml 檔自動展開。可是,現在居然不會!不過別人寄來的卻正常,只有他寄來的有問題。

自然,就看一下 source 有啥不同。在附加檔案的部份,正常的情況應該如下:

Content-Type: message/rfc822;
name="附夾的email.eml"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="附夾的email.eml"

不過,無法自動展開的 email source 如下:

Content-Type: application/octet-stream;
name="附夾的email.eml"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
filename="附夾的email.eml"

 

很奇怪的,Content-Type 變了。後來 Google 了一下,發現有可能是 registry 的問題。

進那台電腦的 registry 一看,果然,它少了下面這個值:

[HKEY_CLASSES_ROOT\.eml]
@="Microsoft Internet Mail Message"
"Content Type"="message/rfc822"

將以上這個值加入後,那台電腦寄出的附加 .eml 檔就沒問題了。