mieki256's diary



2010/07/27(火) [n年前の日記]

#2 [windows] 親父さんの送ったメールが文字化けする理由がたぶん分かったと思ったけどまた分からなくなってきた

数日前に親父さんから「メールが文字化けする」という相談を受けて調べてたのだけど。

まず基本的に、Outlook Express(以下OE) も、Windows Live メールも、Unicodeでメールを送ってしまうと文字化けする可能性が高い、ということらしい。

標準の設定では、OE も Windows Live メールも、「日本語(JIS)」=iso-2022-jp という文字コードでメールを送る。だが、メール本文中に1文字でも「環境依存文字(unicode)」が含まれると、「日本語(JIS)」ではその文字を表現することができなくなる。メーラは、「Unicodeでなきゃ表現できない文字が含まれているから、このメールはUnicodeで送りますわ」と処理をしてしまい、文字化けする可能性が高い Unicode メールが相手先に送られてしまう。

強制的に問答無用でユーザに何の問い合わせもなくUnicodeで送るメーラもあるようだが。少なくとも、Windows Live メールは、送信時に「Unicodeで送るか? そのまま送信するか?」と尋ねてくる仕様になっている。「そのまま送信」を選ぶと、いつも通りに「日本語(JIS)」で送信してくれるので、メール本文中のほとんどの文字は文字化けしない。その代わり、Unicodeで書かれた文字の部分だけ「?」と表示されてしまうメールになる。

今回親父さんから相談を受けた事例では、以下のような流れだったと思われる。
  1. 最初に、相手から、Unicodeメールが送られてきた。(「もぎたて」の「も」のところがUnicodeだった。)
  2. 親父さんはそのメールに返信をしたが、Unicode が含まれた相手のメール本文が内包されているため、親父さんも Unicode でメールを送ってしまった。
  3. 相手先が Unicode のメールを受け取り、文字化けを起こした。
  4. 相手先から親父さんに、「お前のメール、文字化けしてるぞ」と報告が届いた。
ヘッダーを見た限りでは、相手が使っているメーラは、Outlook Express 6.00.2900.5931。であれば、OSは Windows XP だろう。Windows XP + OE と、Windows7 + Windows Live メールで、やり取りをしてたことになる。

親父さんが使ってる Windows Live メール上では、相手から送られてきた Unicode メールが、文字化けせずに表示されている。ということは…。 このどちらかではないかと推測。

OEは古いソフトだし、もはやメンテナンスもされてないので、OE側にバグがある可能性は高い。が、Windows Live メールも、正直言ってあまり出来がいいソフトではないので、Windows Live メール側のバグである可能性も否定できない。さてどっちが犯人なのか。

もうちょっと検証してみた。 :

自分の環境、Windows XP Home SP3 + OE 6.00.2900.5512 + Mozilla Thunderbird 3.1.1 で実験。
  • OEで「もぎたて」をUnicodeで変換。自分のメールアドレスに向けて送信。
  • OEが、「Unicodeで送るか? そのまま送信するか?」と尋ねてきた。どうやらOEも、Windows Live メールと同様、Unicode で送信していいのかどうかをユーザに尋ねる仕様らしい。
  • Thunderbird と OE で受信してみた。Thunderbird 上での表示には問題無し。OE上でも問題…が微妙にある。「もぎたて」が書かれた行が、通常とは異なるフォントで表示されている。が、読めないわけではない。
  • Thunderbird から返信。送信時の問い合わせは無し。どうやら Thunderbird は、メール本文に Unicode が使われていると、問答無用で強制的にユーザに何の問い合わせもなくUnicodeで送信してしまうメーラらしい。
何度か返信を繰り返してみたが、OE が返信時に文字コードについて問い合わせをしてこない時があるのに気付いた。どうやら送信時と返信時では処理が違っているらしい。返信時は元のメールの文字コードをそのまま踏襲して送ってしまうのかもしれず。

とりあえず自分の環境では、Unicodeで送っても文字化けが発生しなかった。
  • メール送受信に使ってる環境が Windows XP + OE or Thunderbird だと、Unicodeで送受信しても問題が起きない?
  • Windows7 + Windows Live メールにバグがある?
  • 文字化け云々とUnicodeは実は無関係? メール内容を検査するウイルス対策ソフト側に問題がある?
  • 自分の環境では avast を試用しているけど、親父さんの環境では Microsoft Security Essentials を使ってる。Microsoft Security Essentials にバグがある?

それはともかく。自分の環境の OE はバージョンが微妙に古い。Microsoft Update で更新してくれないのかな…?

以上です。

過去ログ表示

Prev - 2010/07 - Next
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project