スポンサーリンク

Windows 11アップグレード後に「Intel USB 3.1 eXtensible Host Controller」が認識されない(コード19)ときの対処法

「Intel USB 3.1 eXtensible Host Controller」が認識されない(コード19) Windows

富士通LIFEBOOKなど法人向けノートPCをWindows 10からWindows 11にアップグレードした際、USB機器がまったく認識されなくなるトラブルに遭遇することがあります。デバイスマネージャーを開くと「Intel USB 3.1 eXtensible Host Controller」に黄色い!マークが付き、プロパティを見ると以下のようなメッセージが表示されているケースです。

USB xHCI 対応ホストコントローラー

レジストリ内の構成情報が不完全であるか、または壊れているためこのハードウェア デバイスを開始できません。(コード 19)

レジストリ内の構成情報が不完全であるか、または壊れているためこのハードウェア デバイスを開始できません。(コード 19)

本記事では、この「コード19」の正しい原因の調べ方と、実際に解決できた事例を紹介します。ドライバーの再インストールやファイルコピーでは直らない理由も含めて解説します。

やってみても直らないこと

このエラーに遭遇すると、多くの人がまず以下を試すと思いますが、ほとんどの場合これらは効果がありません。

  • デバイスマネージャーでアンインストール→再起動
  • 富士通やIntelの公式サイトでドライバーを探してインストール
  • 同モデルの正常なPCから C:\Windows\System32\DriverStore 配下をコピーして読み込む

これらが効かない理由は単純で、コード19はドライバーファイルの欠落エラーではないからです。コード19の本質は「レジストリ内の構成情報が不完全・破損している」ことであり、ドライバー本体(.sysファイルなど)は正常に存在していても発生します。

本当の原因:UpperFilters / LowerFilters の残骸

USBホストコントローラーでコード19が出る最大の原因は、デバイスクラスのフィルタードライバー登録(UpperFilters / LowerFilters)に、もう正しく動作しないドライバー名が残っていることです。

Windowsのデバイススタックは、メインドライバーの上下に「フィルタードライバー」を追加で挟み込める仕組みになっています。USBポートの制御を行うセキュリティソフトや、指紋認証ユーティリティ、仮想ドライブソフトなどは、この仕組みを使って自分のドライバーをUSBコントローラーのスタックに割り込ませています。

もしこのフィルタードライバーがWindows 11環境で正しく読み込めない(非対応バージョンのまま残っている、ファイルが消えている等)場合、フィルタードライバーの読み込み失敗がスタック全体に伝播し、USBホストコントローラー自体が起動できなくなります。これがコード19として表示されるわけです。

確認手順

  1. regedit を起動する
  2. 該当キーを開く前に、念のため右クリック→「エクスポート」でバックアップを取る
  3. 次のキーを開く(USBデバイスクラス)
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}
  4. 右側の値一覧から UpperFilters または LowerFilters(種類:REG_MULTI_SZ)を探す
  5. 正規のドライバー名以外に、見慣れない文字列が入っていないか確認する

正常な同モデルのPCがあれば、同じキーを開いて値を比較するのが最も確実な方法です。

実例:USBポート制御ソフトが原因だったケース

実際の調査では、LowerFilters の値に portshutUSB という文字列が登録されているケースがありました。これは法人PCでUSBポートの利用を制限・管理するためのセキュリティソフト(USBポート制御製品)が組み込んだフィルタードライバーです。

注意すべきは、「USB利用を許可(解除)」している設定であっても、フィルタードライバー自体はレジストリに登録されている限り常にロードされるという点です。つまり、運用ポリシー上は「許可」になっていても、ドライバーバイナリやサービスがWindows 11に対応していなければ、ロード自体に失敗してコード19が発生します。設定の許可/禁止とは別問題として、ドライバーの対応状況を確認する必要があります。

対処法

1. 診断のための一時テスト

レジストリのバックアップを取った上で、LowerFilters の値から該当の文字列だけを削除し、再起動してUSB機器が認識されるか確認します。これで直れば、そのフィルタードライバーが原因であると確定できます。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}

今回はこの方法で、正常にUSB機器が認識できるようになり、デバイスマネージャーの表示は以下のようになりました。

Intel USB 3.1 eXtensible Host Controller

2. 該当ソフトのWindows 11対応版へのアップデート

多くのUSBポート制御ソフト・セキュリティソフトは、OSメジャーバージョンごとに動作確認済みのクライアントバージョンを公開しています。Windows 11への対応版クライアントソフトを再インストールすることで、フィルタードライバーが正しく更新され、問題が解消します。

  • ドライバー実体(例:C:\Windows\System32\drivers\〇〇.sys)の有無と更新日時を確認
  • services.msc で関連サービスが「実行中」になっているか確認
  • ソフトウェアの提供元・販売代理店にWindows 11対応バージョンの有無を確認

補足:「Intel USB 3.1 eXtensible Host Controller」の単体インストーラーは存在しない

このトラブルに遭遇すると、つい「Intel公式サイトでドライバーを探してインストールし直せば直るはず」と考えてしまいますが、実はこのデバイス名の単体インストーラーは現在Intel公式サイトには存在しません。

USB xHCIホストコントローラーは、Windows 8.1以降ではMicrosoft純正の汎用ドライバー(inboxドライバー)でそのまま動作する仕組みになっています。デバイスマネージャーのプロパティで製造元が「汎用 USB xHCI ホスト コントローラー」と表示されるのは、まさにこのMicrosoft標準ドライバーが正しく組み込まれている状態を示しています。8〜10世代Coreプロセッサー向けにはかつてIntelからチップセットドライバーセットの一部として配布されていた時期もありますが、新しいWindowsバージョン向けの提供は終了しており、ドライバー自体が欠落しているわけではありません。

確認できる公式の場所としては以下が挙げられますが、いずれも検索しても見つからないか、「Windows 7/8.1向けの古いパッケージのみ」という結果になります。

つまり今回のようなコード19のケースでは、ドライバーを探し回ること自体が時間の無駄になりがちです。ドライバー本体は最初から正常であり、根本原因は前述のフィルタードライバー(レジストリのUpperFilters / LowerFilters)にある、という点を押さえておくと、トラブルシューティングの方向性を誤らずに済みます。

まとめ

USBホストコントローラーでコード19が出た場合、まず疑うべきはドライバー本体ではなくレジストリのUpperFilters / LowerFiltersです。特に法人PCでは、セキュリティ目的のUSB制御ソフトが組み込んだフィルタードライバーがOSアップグレードに追従できていないケースが多く見られます。

ドライバーの再インストールや別PCからのファイルコピーで直らない場合は、レジストリ内のフィルタードライバー登録を確認することを強くお勧めします。

タイトルとURLをコピーしました