イベントID10016,ID10010が止まらない原因はFlashだった

Win8をいれてから約半年ずっとイベントID:10016とイベントID:10010が出続けて困っていた。どちらもimebroker.exe(IME2012)とDistributedCOMに関係しているのはすぐに分かったが最終的な解決が無く手詰まりでした。

DistributedCOMのアクセス権に四苦八苦したあげく、原因は無残にもFirefoxとFlashの組み合わせ、毎度お馴染みの保護モードでしたってオチ。過程を楽しみたい人”のみ”上から順に読んでください。

イベントID:10010

サーバー {DE50C7BB-FAA7-4A7F-BA47-BF0EFCFE433D} は、必要なタイムアウト期間内に DCOM に登録しませんでした。

Windows または Windows Server ベースのコンピュータでイベント ID 10010 が記録されることがある

ここを参考にしてimebroker.exeが原因だと突き止める。

イベントID:10016

アプリケーション固有 のアクセス許可の設定では、CLSID
{DE50C7BB-FAA7-4A7F-BA47-BF0EFCFE433D}
および APPID
{B0316D0C-DA2F-40E0-9F91-F600CAF042DC}
の COM サーバー アプリケーションに対するローカルアクティブ化のアクセス許可を、アプリケーション コンテナー 利用不可 SID (利用不可) で実行中のアドレス LocalHost (LRPC 使用) のユーザーSID (S-1-5-21) に与えることはできません。このセキュリティ アクセス許可は、コンポーネント サービス管理ツールを使って変更できます。

イベントID:10010と同じアプリがエラーを起こしてるので、このイベントに書かれているアクセス許可が原因だと考え下記を実行した。(無意味)

imebroker.exeのアクセス権をDCOMで操作できるようにする為の準備

  1. Win+R [ファイル名を指定して実行]
  2. 「regedit」と入力して[OK]をクリック
  3. HKEY_CLASSES_ROOT\AppID\{b0316d0c-da2f-40e0-9f91-f600caf042dc}を選択-右クリック-[アクセス許可]をクリック
  4. [詳細設定]をクリック
  5. 所有者の横の[変更]をクリック
  6. [詳細設定]-[検索]の順にクリック
  7. 「Administrators」を選択し[OK]2回をクリック
  8. 「Administrators」を選択し[編集]をクリック
  9. フルコントロールにチェックをいれて[OK]2回をクリック

所有者を元に戻すには「NT Service\TrustedInstaller」と指定します。

imebroker.exeへの[起動とアクティブ化のアクセス許可]をローカルユーザー(INTERACTIVE)に付与

  1. Win+R [ファイル名を指定して実行]
  2. 「dcomcnfg」と入力して[OK]をクリック
  3. [コンポーネン]-[サービス]-[コンピューター]-[マイ コンピューター]-[DCOMの構成]の順にクリック
  4. {b0316d0c-da2f-40e0-9f91-f600caf042dc}を選択-右クリック-[プロパティ]をクリック
  5. [セキュリティ]をクリック
  6. [起動とアクティブ化のアクセス許可]-[カスタマイズ]-[編集]をクリック
  7. [追加]-[詳細設定]-[検索]の順にクリック
  8. 「INTERACTIVE」を選択
  9. [ローカルからの起動][ローカルからのアクティブ化]にチェック
  10. [OK]を2回クリック

結果、上のとは違うイベントID:10016が増えたので、すべてを元に戻し放置することにした。

FirefoxとFlashが原因だと気付く

放置して数カ月、Firefoxを使用した後にイベントが多く発生していることに気が付いた。Firefox、IMEときたらFlash Playerが堂々と頭をよぎり、日本語入力と保護モードの問題だと推測した。

推測を検証する過程でFlashの入力フォームに日本語を入力してもエラーが出ないサイトと、出るサイトがある事に気が付いた。そこで複数のパターンのFlashのフォームが設置されているサイトを探していたら下記のサイトにたどり着いた。

Firefox上のFlash Playerで、保護モードが有効でもIMEが利用できるようにする方法

このサイトでイベントビューアーを確認しながら文字を入力してみたところ「Windows8でFirefoxを使ってFlashのwmode指定なしのフォームに日本語を入力するとイベントID:10016が発生する。」という確証を得た。

イベントビューアーをよく見る筆者は実害が無くてもエラーが発生するだけで精神的に病むので、セキュリティ的に危険だと分かっていても保護モードを外す事にした。保護モードを外すには下記を参照すると良い。

Firefox上で、Flash Playerが遅い、ハングアップする、日本語入力できない、という方には、保護モードの解除をお勧めします

Flash Player 保護モードのトラブルシューティング(Firefox | Windows)

ハングアップしたり、日本語入力できなくなればすぐに気が付けたのに、普通に入力ができてイベントビューアーにDCOMのアクセス権がなんちゃらって書かれると違う問題なのかと思いハマってしまったというお粗末な話でした。

コメントを残す