拡張子msgのOutlookメールファイル)が添付No.08748
moppu さん 21/10/20 21:38
 
質問が1つ、要望が1つあり投稿させていただきます。

Win10 Pro(20H2) 64bit + 秀丸メール Version 7.00 32bit + Microsoft Graph API
の組み合わせで Office 365 のメール送受信に秀丸メールを利用しています。

【質問】
Outlook 365 から送信された、拡張子 .msg のOutlookメールメッセージファイル
(以下MSGファイル)
が添付されたメールを秀丸メールで受信すると、添付MSGファイルが eml形式に変換
されます。
これは意図したものでしょうか?
(Outlook 365で同じメールを受信すると添付MSGファイルの拡張子は .msg のまま)
eml形式に変換されたファイルは秀丸メールでそのまま開けるので便利ではあります。

【要望】
Outlook 365 から送信された、
「「MSGファイル(B)が添付されたMSGファイル(A)」が添付されたメールを
秀丸メールで受信すると、添付のMSGファイル(A)はeml形式に変換されますが、
eml変換後のファイル(A)の中に添付されたMSGファイル(B)が「何らかのファイル.txt
 (0バイト)」
という名前のファイルに変わり、中身を見ることができません。
受信動作で次のいずれかご対応いただくこと可能でしょうか?
案1:MSGファイルの中のMSGファイルも同様にeml形式に変換する。
案2 :添付されたメールアイテムをeml形式に変換せず元の形式のままで受信する。
(MSG形式ファイルはOutlookで開けばいいでしょ、という割り切り仕様)

※ 業務メールで「詳細は添付のメールファイルをご参照ください」のような感じで
メールアイテムが添付されたメールを受信することがあり、不便を感じたため要望さ
せていただきます。

[ ]
RE:08748 拡張子msgのOutlookメールファイNo.08749
秀まるお2 さん 21/10/21 09:58
 
 Microsoft Graph APIについて、いろいろ勉強不足/テスト不足の点がありました。

 まず、拡張子「.msg」形式の添付ファイルを受信して、その拡張子が「.eml」にな
る件ですが、Graph APIから取得される添付ファイルの名前としては、例えば「A.ms
g」なら「A」の部分だけが取得されてました。Jsonで書くと、

    {
        ...
        "name": "A",
        "contentType": "message/rfc822",
        ...
    }

 みたいな感じでして、秀丸メールは「.msg」という拡張子だったことは知らず、co
ntentTypeからファイルの拡張子を勝手に「.eml」と判断して保存していました。こ
れは結果オーライということなんだと思います。

 さらに今回の問題となる「何らかのファイル.txt」の件ですが、添付ファイルの中
に添付ファイルが含まれてるケースについての処理がいまいち手抜きだったような気
がします。

 ちょっとその辺の経緯が分からないというか、もしかしたら以前は「添付ファイル
中の添付ファイル」については中身が取得できてなかったのかもしれないですが、先
ほどテストしたら、ちゃんと中身が返ってきていました。

 具体的には、

    {
        ...
        "name": "xxxxxxxxxxxxxx.msg",
        "contentType": "application/octet-stream"
        "contentLocation": null,
        "contentBytes": "......ファイルの中身.....",
        ...
    }

 みたいな感じでちゃんと返ってきてました。

 たぶんサイズが非常に大きい場合は"contentLocation"の方を見てさらにGETしない
といけないんだろうと思います。

 さらには、ここではファイルの拡張子が「.msg」となってしまってるようなので、
これは「.eml」に直した方がいいんだろうと思います。勝手に.emlに変更しようかな
ぁと思います。

> 案1:MSGファイルの中のMSGファイルも同様にeml形式に変換する。

 こっちで行こうと思います。

 どっちにしてもちゃんと中身を受信して保存するようにしてみます。

[ ]
RE:08748 拡張子msgのOutlookメールファイNo.08750
秀まるお2 さん 21/10/21 10:00
 
 追加ですが、「全般的な設定・上級者向け・動作の記録」の

 □ 秀丸メールの動作をdump.txtに記録する
 □ すべての送受信内容

 の両方をONにすると、この辺のやりとり記録をすべて見ることが出来ます。添付フ
ァイル・ファイル名は"name"とかで検索すると出てきます。

[ ]
RE:08749 拡張子msgのOutlookメールファイNo.08751
moppu さん 21/10/21 10:12
 
ご回答ありがとうございます!
技術的にいけそうとのことですので実装を楽しみにしております。


[ ]
RE:08751 拡張子msgのOutlookメールファイNo.08753
秀まるお2 さん 21/10/22 10:05
 
 今アップロードしました。すみませんがぼちぼち確認お願いしたいです。

32bit版:
https://hide.maruo.co.jp/software/bin3/hmmail710b9_signed.exe

64bit版:
https://hide.maruo.co.jp/software/bin3/hmmail710b9_x64_signed.exe

 一応、秀丸メールから「.eml」の多重添付ファイル付きメールを送って受信するテ
ストはしたんですが、Outlookから送信するテストはやってないです。(Microsoft O
fficeのテストがちょっと今出来ないので)

 電子メール形式の添付ファイルとちゃんとExchange Onlineさんが認識してれば大
丈夫なはずですが、普通の添付ファイルと認識されてまってるとしたら、やはり「.m
sg」の拡張子で受信されてしまうと思います。どっちになるかはちょっと分からない
のですが、しいて「.msg」として出てきたとしても、秀丸メール側でそれを「.eml」
に変換することは無理なことが分かりました。

 単純にファイルの拡張子を「.eml」にしたのではダメなようです。「.msg」のファ
イルは.emlとは別の、Outlook独自形式の物のようです。うまくExchange Online側が
変換してくれることを期待したいです。

 よろしくお願いします。

[ ]
RE:08753 拡張子msgのOutlookメールファイNo.08755
moppu さん 21/10/22 11:19
 
素早いご対応ありがとうございます!
早速2パターンほど(多重度1と多重度2)で動作確認しました。問題ございません。
また便利になりました。感謝感謝でございます。

確認環境:
Win10 Pro(20H2) 64bit + 秀丸メール Version 7.10 Beta 9 32bit + Microsoft Gra
ph API

動作確認1(メールアイテム多重度1):
「xlsx形式ファイル(B)が添付されたメールアイテム(拡張子msg)(A)」を添付した
メールを Outlook 365 から送信して秀丸メールで受信
→ 問題なし。
メールアイテムA は eml形式 に変換され秀丸メールで読むことが出来た。
メールアイテムA に添付されたファイルB もExcelで読むことが出来た。

動作確認2(メールアイテム多重度2):
「「xlsx形式ファイル(C)が添付されたメールアイテム(拡張子msg)(B)」が添付され
たメールアイテム(拡張子msg)(A)」を添付したメールを Outlook 365 から送信して
秀丸メールで受信
→ 問題なし。
メールアイテムA は eml形式 に変換され秀丸メールで読むことが出来た。
メールアイテムA に添付されたメールアイテムBも eml形式 に変換され秀丸メールで
読むことが出来た。
メールアイテムB に添付されたファイルC もExcelで読むことが出来た。

[ ]
RE:08755 拡張子msgのOutlookメールファイNo.08756
秀まるお2 さん 21/10/22 12:02
 
 確認ありがとうございます。

[ ]