MacTypeのおかげでWindows10 Anniversary Updateにハマった
Windows10で「Anniversary Update」が発表されました。
何よりも試したかったのはWindowsでBash使えるです。 インストール方法は、僕の会社で書いた記事参考にしてみてください。
Windows 10 Anniversary UpdateをしてBashを使う方法 | 株式会社ビヨンド
Anniversary Updateでどんな機能が追加されたかはこちらを参照してください。
新機能を大解剖。Windows 10 Anniversary Updateを体験してみた|ギズモード・ジャパン
意気揚々とアップグレードしてやろうとしたら、 アップグレードの途中でブルースクリーンが発生して、巻き戻ってやんの。
で、何が悪かったかっていうと、MacTypeでした。
MacTypeについてはコチラをご覧ください。WindowsでフォントをMac並にキレイにしてくれるツールです。
「MacType」 WindowsでMac並のフォントを手に入れよ! | TRAVELING
Anniversary UpdateからのBSOD
Windows10のAnniversary Updateするじゃないですか。
アップデート条件としてCドライブ空き容量20GB必要とか、128GBのSSDではちょっと無茶やろっていう状態も なんとか乗り越えてアップデートしたんです。
Anniversary Update、結構時間かかるんですよ。
- ダウンロード&インストールに40分ぐらい
- インストール後の適用(何度も再起動かかる)に30分ぐらい
これだけで1時間超え。(あ、XPにSP当てるときもっとかかったかも・・・)
で、なんとかアップデートして「適用しています…90%」みたいなところで、画面から青いの出たんですよ。 BSOD、ブルースクリーンです。
はぁ…ちなみにこの後2種類の症状が出まして(2台に対してAnniversary Updateした)
- アップデート前に切り戻される
- ブルースクリーンがループして立ち上がらない
2番目なんて辛いですよ。 カーネルがっつり触るセキュリティ系のソフト扱ってたときによく陥ったな…なんて思いながら。
マジでMacTypeには要注意
会社でブログやってて、そこにも書いたんですが… Vagrant(VirtualBox)で「セッションが開けませんでした」のときはMacTypeを疑え | 株式会社ビヨンド
VirtualBoxがMacTypeによって動かなかくなったっていう記事です。
で、MacTypeってアプリケーションは、あらゆるプロセスを掴んで、 そのプロセスのフォントレンダリングを変えてキレイに見せてくれます。
アプリケーションをフックしまくります。それはWindows全体に及んでいて、 ChromeとかThunderbird等のアプリだけでなく、 WindowsOSの機能であるエクスプローラーまで掴みます。
そこでAnniversary Updateでもブルースクリーン。 ブルースクリーンに表示されているコードが「CCRITICAL PROCESS DIED」これにピンと来たんですよね。 「MacTypeじゃないか」 と。
これがビンゴ。 MacTypeをアンインストールして再度アップデートすると、無事成功!
アップデート前に切り戻った場合はMacTypeをそのままアンインストール。 ブルースクリーンがループしている場合は、セーフモードで立ち上げてアンインストールしましょう。
MacTypeを使っている人は注意してみてください。
じゃあAnniversary Update後にMacTypeは使えない?
結論から言うと使えます。
アップデート後、MacTypeをインストールして起動すると、無事ブルースクリーンが発生しました。じゃあムリでは…?と考えますが、そうではないです。
Windows 10 Build 14295以降用のMacType修正パッチ - みかちのIT関連ブログ
詳細は上記サイトの手順を踏んでもらえればOKです。
引用します。
EasyHookというフックツールを作っている人が居るようでして、MacTypeではこのDLLを使ってフォントレンダリングをフックしている(乗っ取っている)ようです。 ところが、このDLLのバージョンが開発停止の関係で、2012年のバージョンのまま放置されています。 今回のビルドで、古すぎるが故に正しく動作しなくなった様子が伺えます。 【解決方法】※DLLファイルはリンクから取得してください。 EasyHK32.dllとEasyHK64.dllをMacTypeフォルダーにコピーして更新するだけです。
あとここも参考になります。 【配布】MacTypeでDirectWriteの設定を変えるパッチ - しらいとブログ
MacTypeがプロセスをフックするために使っている「EasyHook」というdllファイルが古すぎるがためにクラッシュ等が発生しているようなので、 有志の方が作成してくれている最新版のEasyHookを適用してあげればOKです。
では、よきMacTypeライフを!
おあとがよろしいようで。