YSK さんが書きました:
※メッセージフィルタを使用して転送させたメールの添付ファイルが破損してしまう
自分宛にテスト送受信してみたところ再現しました。
[環境]OS:Windows XP SP3、Thunderbird 3.1.9 日本語版(セーフモードでも同様)
YSK さんが書きました:
・社内メール(IMAP)で使用中です。受信したメールをGmailアカウント宛に、
メッセージフィルタの転送機能(以下、自動転送)を使用して転送しています。
・この自動転送の際、受信時に添付されたファイル(Excel・pdf等全て)が、
Gmail側で破損したファイルとなっています。
私の場合は Gmail の IMAP しか利用していないのでまったく同じ条件ではありませんが
IMAP アカウントでメッセージフィルタを利用して添付ファイル付きのメッセージを転送す
るようにフィルタ設定すると転送はおこないますがほぼ以下のように同様となります。
YSK さんが書きました:
・自動転送で作成された送信メールをローカル(送信済トレイ)に保存させており、
その送信済メールにある添付ファイルを開こうとすると、破損している旨が表示され、開きません。
同様ですが破損表示はありませんが添付ファイルは開けませんでした。
(.xls ファイルの場合)
添付ファイルが正常ではないので当たり前ですが・・・。
YSK さんが書きました:
・尚、破損したファイル名は受信時のままで、文字化け等は一切ありません。
ただ、どんなファイル(Excel・pdf)でも、必ずそのファイルサイズは「27バイト」となっています。
転送先(受信側)では同様となります。
添付ファイル名は正常ですがサイズがありませんでした。(27バイト?)
YSK さんが書きました:
・上記症状となる、元々の受信メールを、自分で転送操作(転送ボタン押してアドレス入れて...)し、
送信を行うと、それは全く通常通りで、Gmail側受信も問題なく、送信済メール側の添付も開きます。
同様かと思われます。
IMAP アカウントで手動でメッセージフィルタを適用させると問題なく転送されました。
受信時(同期時)のメッセージフィルタの自動適用では転送はおこないますが添付ファイ
ルが壊れた状態で転送(送信)されます。
以下がその添付ファイルのヘッダ部分と壊れたデータ部分になります。
コード:
--------------020601090600060509030400
Content-Type: application/octet-stream;
name="sample.xls"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="sample.xls"
Thisbodypartwillbedownloadedondemand
--------------020601090600060509030400--
上記のように添付ファイルのデータ部分冒頭に "This body part will be downloaded ondemand."
というコメントが付記されてその後は 1 行で途切れています。
調べたわけではないのでなんともいえませんが Gmail 側の仕様なのかも知れません。
バグとしては似てると思われるものが以下にありました。
Bug 627795 – Message Filter Trashing Attachments multipart/mixed; and base64 attachments
上記は再現条件が不明確なのでよくわかりませんが IMAP + メッセージフィルタで起こる
現象ならば類似しているかと思われます。
とりあえず回避策としては手動で転送するかメッセージフィルタを手動でその都度適用す
るしかないようです。
あるいは POP アカウントならば正常にメッセージフィルタで転送できましたので POP で利
用するのも方法かも知れません。