前回の記事で、Windows 10 にアップグレードしてから「ウチではまだ大きな問題は発生していません」と書いてしまいましたが、うっかり失念してました。
そういえばありました、問題。
Windows 10 に標準でついてくるメールアプリがあるじゃないですか?
あれが突然、起動してすぐに毎回クラッシュするようになってしまったのです。
つまり、メールを読もうとして起動しても、数秒後には落ちてウィンドウが消えてしまいますから、これでは使い物になりません。
こりゃ困ったなぁ、となんやかんや調べたり試した末に、どうにかクラッシュしなくなりましたので、何をやったのかを記事として残しておきます。
ウチでは直らなかった手順でも、他の環境では効果を発揮することもあるかも知れませんので、なるべくシステムに及ぼす影響が少なそうな方から書いていきます。
逆に、ウチで解決した方法でも、結局直らなかった海外の方もいるようなので、どんな環境でも必ず直るとは限りませんが、どなたかのお役に立ちましたら。
読み込み中です。少々お待ち下さい
現象について、ひとくさり
順を追って説明すると、まず Windows 10 にアップグレードする前から、いくつかのメールアカウントを Windows Live Mail で管理していたという経緯があります。
そして、Windows 10 にアップグレードした後も、引き続き使うつもりでセットアップを行いました。
ところが、2 段階認証を設定している Outlook (Microsoft) アカウントの同期が、何故か上手くいかなかったのです。
何度やり直しても、パスワードが違うと怒られてエラーになってしまいます。
2 段階認証を設定しているアカウントですから、もちろん専用のアプリパスワードを発行しています(WLM は 2 段階認証に対応していないので。というか、念の為にどっちも試しました)。
コピペで貼り付けましたから、入力ミスも考え難いです。
でも、ダメなのです。Windows 8.1 では、問題無かったのに。
全く同じ内容で困っている方がいましたので、これは私の勘違いという訳でもなさそうです。
しかも、どうやらスマートな解決は無理そうな雰囲気。
というか、最早いつ廃止されるか分かったものではない Windows Live Mail に、いつまでも固執し続けるのも何か違うな、と思い直しまして(Live Mesh 等の様々なアプリやサービスをあっさり廃止した恨みを、私は忘れていません)、これを機に Windows ストアアプリ(一昔前で言うところの Metro アプリ、いまで言うユニバーサル Windows プラットフォーム(UWP)アプリ、もしくは単にアプリ)のメールを使ってみることにしました。
このメールアプリなら、最近の Microsoft が共通して使っているサインイン機能に対応していますから、真っ当に 2 段階認証も行えますし、導入してしまえば当分は安心して使えそうです。
アカウントのインポート機能が見当たらなかったので、仕方なくひとつひとつ手で追加したり、流石にデスクトップアプリと比べると、メーラーとしての機能は見劣りしますので、若干の不便さを感じながらも、メールの同期自体は問題が無さそうでしたので、とりあえずこれでいいやーと一段落つけました。
さて、そこまでは良かったのですが、その後、数日が経過した頃のことです。
突然、メールアプリが起動してすぐ、ほんの数秒後に、必ず落ちるようになってしまったのです。
調査開始
現象が発生した時のイベント ビューアーのログは、こんな感じです。
障害が発生しているアプリケーション名: HxTsr.exe、バージョン: 16.0.6310.4225、タイム スタンプ: 0x56198598
障害が発生しているモジュール名: hxcomm.dll、バージョン: 16.0.6310.4225、タイム スタンプ: 0x561985c4
例外コード: 0xc0000005
障害オフセット: 0x000281c3
障害が発生しているプロセス ID: 0x1164
障害が発生しているアプリケーションの開始時刻: 0x01d10dc274165ad5
障害が発生しているアプリケーション パス: C:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_17.6310.42251.0_x86__8wekyb3d8bbwe\HxTsr.exe
障害が発生しているモジュール パス: C:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_17.6310.42251.0_x86__8wekyb3d8bbwe\hxcomm.dll
レポート ID: 6dac03b3-bcaa-449e-bfd7-fedd69fb4fc4
障害が発生しているパッケージの完全な名前: microsoft.windowscommunicationsapps_17.6310.42251.0_x86__8wekyb3d8bbwe
障害が発生しているパッケージに関連するアプリケーション ID: ppleae38af2e007f4358a809ac99a64a67c1
クラッシュを再現させて、HxTsr.exe と HxMail.exe のファイル・レジストリ操作を観察したりもしたのですが、残念ながら原因は特定できませんでした。
ストアアプリは「C:\Program Files\WindowsApps」という隠しフォルダにインストールされるのですが、所有者が「NT SERVICE\TrustedInstaller」で、ユーザーは管理者権限を持っていたとしても、そもそも中を覗けないように設定されており、できることは限られています。
アクセス許可を無理やり変えると、セキュリティホールになり兼ねませんので、それもしたくありません。
ストアアプリのユーザー毎の設定やデータであれば「C:\Users\アカウント名\AppData\Local\Packages」配下にあり、そちらは普通に見ることが出来ますので、それっぽいファイルやら何やらを軽く調べてみたのですが、一向に手掛かりが掴めず。
そこそこで切り上げて、ネットで解決策を探すことにしました。
DISM と SFC
ここから先の作業は、必ず自己責任で行ってください。
当方は一切の責任を負い兼ねますので、予めご了承ください。
で、まず目についたのが、この辺り。
この2つに限らず、あちこちに散見される似たような書き込みをまとめると、おおよそ以下ような手順になるでしょうか。
- 管理者としてコマンドプロンプトを起動
- 以下の2つのコマンドを実行
DISM.exe /Online /Cleanup-image /Scanhealth DISM.exe /Online /Cleanup-image /Restorehealth
- PC を再起動
- メールアプリを起動して、すぐに落ちてしまわないか確かめる
- まだクラッシュしてしまう場合は、さらに以下のコマンドを実行
sfc /SCANNOW
- PC を再起動
- メールアプリを起動して、すぐに落ちてしまわないか確かめる
各コマンド、それぞれそれなりに時間がかかります(システムのボリューム次第ですが、10 分~ 1 時間くらいが目安でしょうか)。
DISM.exe は「展開イメージのサービスと管理(Deployment Image Servicing and Management)」というものでして、詳しくは本家の概要をご覧ください。
また、SFC.exe はシステムファイルチェッカー(System File Checker)で、これも詳しくは本家のドキュメント等を参照していただきたいのですが、大雑把に言うと、どちらもここではシステムファイルの修復を行っています。
で、結果的に、ウチの場合はこれでは直りませんでした。
いや、うん、まぁ、薄々そうじゃないかとは、やってて思いましたけど。OS をインストールしたばっかりですしね。
ちなみに、上に書いてあることが良く分からない場合は、実行しない方が無難だと思います。
それから、実行するとエラーが発生してしまう場合は、また違う問題になりますので、エラーメッセージ等をキーワードにして別途検索をかけてみてください。
PowerShell で
続いて、上に加えて目に留まったのが、この辺り。
手順を抜き出すと、こんな感じでしょうか。
- 管理者として PowerShell を起動(コマンドプロンプトから PowerShell を呼んでも構いません)
- 以下のコマンドを実行
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}
- PC を再起動
- メールアプリを起動して、すぐに落ちてしまわないか確かめる
2016/02/02 追記:
これを実行すると、ストアアプリの情報が壊れてしまうことがあるようです。基本的に実行しないでください。おすすめできませんので、コピペで動かないようにマルチバイト化しておきます。
どうしても実行する場合は、壊れても良い覚悟で、対象をメール/カレンダーアプリに絞って実行した方が良いと思われます(書き方が分からない場合は、実行しない方が良いと思います)。サードパーティ製のセキュリティ対策ソフトを導入していると、コマンドの実行に影響を及ぼすケースがあるかもしれません(確定情報ではありません)。
実際に壊れてしまった場合は(スタートメニューに配置したタイルのタイトルが @{microsoft... のようにおかしくなるので、すぐに分かります。また、タイルをタップ/クリックしても、アプリが起動しなくなります)、管理者権限を持った別のローカルアカウントを作成し、そちらに切り替えると問題が解決する場合があります(新しいアカウントでストアアプリが実行できない場合は、上のコマンドで再登録して復旧できることがあります)。
復旧の見込みが全く立たない場合は、「設定」→「更新とセキュリティ」→「回復」から、「この PC を初期状態に戻す」を選択するか、Windows 10 のメディアから Repair、もしくは上書きインストールした方が早いかも知れません(「初期状態に戻す」で復旧できた環境を確認しています。デスクトップアプリは消えてしまいますが、ユーザーデータを残す設定は可能です)。
要するに、これは全てのストアアプリを再登録しているんですね。
もしかしたら、これで直るかも!
と期待したのですが、ダメでした。
ちなみに、これを実行しても、ウチでは設定が消えてしまうようなことはなかったです。
また、実行時にエラーが発生する場合は、ここで取り上げているのとは違う問題になりますので、エラーメッセージ等をキーワードにして別途検索をかけてみてください。
余録
個人的に、これはどうなの? と感じた方法も、一応まとめておきます。
まずは、ユーザープロファイルが壊れてるかも知れないから、ローカルユーザーを作ってそっちでログインしてみるといいんじゃね? という提案。
私は試しませんでしたが、これで解決する可能性も、確かに皆無ではないような気はします。
ローカルユーザーでサインインして、その後再起動を挟んで、元のアカウントでサインインし直せば良いようです。詳しくは、引用元や類似の情報をあたってください。
次に、設定アプリの「プライバシー」で、メール/カレンダーの位置情報の使用をオフにするという方法。
効果のほどは良く分かりませんが、簡単にできるので、これで直ればめっけもんです。
それから、ここに書かれている Troubleshooter とか。
正直、実行するには精神的なハードルが少々高いので、オススメしません。
アンインストールしちゃえばいいじゃない
さてさて、ここまで色々試してきましたが、メールが起動して数秒後に落ちてしまう現象は、結局のところ解決していません。
もうこうなったら、アプリを一旦アンインストールして、環境を綺麗にした上でインストールし直すしか手は無さそうです。
(ここまで見てきた「余録」以外の DISM、SFC 辺りを試してから、最後の手段で行った方が良いと思います)
ところが、Windows ストア経由で後からインストールしたアプリはアンインストールできるのですが、基本機能を提供するいくつかのビルトインアプリは「アンインストール」を選択できません。
そして、メール/カレンダーも、アンインストールが出来ない組に所属しています。
そこで、どうするのかというと、まずは以下を参考に PowerShell を使って削除して、その後 Windows ストアからインストールし直しますことにします。
おおまかな操作としては、以下の通り。
- 管理者として PowerShell を起動(コマンドプロンプトから PowerShell を呼んでも構いません)
- 以下のコマンドを実行して、メール/カレンダーを削除
Get-AppxPackage microsoft.windowscommunicationsapps | Remove-AppxPackage
(引用元では "Get-AppxPackage *communi*" のように記述されていますが、名前に communi という文字列を含むアプリが他にあった場合、そちらまで消されてしまうので、フルネームで指定した方が安全かと思われます)(というか、根本的に安全な方法ではありませんので、ストアアプリの情報が壊れても対処できる方以外は、実行しないようにしてください) - 念の為に PC を再起動
- Windows ストアから、メール/カレンダーを再インストール
- メールアプリを起動して、すぐに落ちてしまわないか確かめる
再インストール後は、はじめて起動する体になりますが、登録しておいたアカウントはそのまま残ってますので、すぐに使い始められます。
これでようやく、ウチではメールおよびカレンダーアプリが、起動してすぐに落ちなくなりました。
ふぅ、やれやれ。
環境によっては、これでも解決しないケースもあるようですが、とりあえず今回はこんなところで。
以下、余談になります。
このように、PowerShell を使えばビルトインアプリも削除することが可能ですが、今回のようにすぐ再インストールする訳ではなく、必要無いからとハナから削除する目的で不用意に消したままにしておくと、高確率でいずれ問題が発生しますので、普通はやらない方が良いです。
おわりに
この現象は、一体なんなんでしょうねぇ。
メールに限らず、まだストアアプリ全般で問題が発生し易いようなので、何かのキッカケでアプリの構成がおかしくなったりすることがあるんでしょうか。
ストアアプリが不安定なのは、Microsoft の方針的にかなりマズいと思いますし、Windows 系モバイル端末の普及にも直接的に影響してくるので、これ以上ユーザーの心象を悪化させない為にも、なるべくこういったことがないように頑張って欲しいです。
ところで、今回の記事の内容は、ある程度 PC の操作に慣れていないと、そこそこハードルが高いかも知れません。
不慣れな方は、あまりコマンドプロンプトやら PowerShell を触らない方が良いように思いますので、アプリのアップデートに伴って自動的に問題が解決するのを待った方が賢明かも、と思わないでもありません(というか、そっちが本筋?)。
もしくは、いっそのこと mozilla の Tunderbird に乗り換えちゃうとか。
まぁ、ああいうコテコテのメーラーを使う時代では、もうない気もしますけど。
2016/03/23 追記
遅ればせながら追記しておきますけれども、こんな問題もありますしね。
コテコテの PC メーラーに、もはや居場所は無いのかも知れません。