WindowsでCompatTelRunner.exeが原因で発生する高いCPU使用率を解決する方法

Windows PCの動作が遅いとお困りですか?CPU使用率が高いという問題に悩まされた経験のある方なら、CompatTelRunner.exeが原因であることがよくあることに気づいているかもしれません。このプロセスはシステムのアップデート互換性をチェックする役割を担っていますが、時として過剰に動作してしまうことがあります。このプロセスが原因でマシンがジェットエンジンのような音を立てているのにうんざりしているなら、このガイドで試してみる価値のある方法をいくつかご紹介します。魔法のような解決策ではありませんが、私の環境ではCPU使用率の急上昇を抑えるのに役立ちました。もしかしたら、あなたの環境でも同様の効果があるかもしれません。

WindowsでCompatTelRunner.exeのCPU使用率が高い問題を解決する方法

解決策1:システムファイルチェッカー(SFC)とDISMを実行して破損したファイルを修復する

Windowsはシステムファイルに関して時折過剰に反応することがあるため、これらの組み込みツールを実行することで、プロセスが暴走する原因となっている可能性のある破損または欠落したシステムファイルを修復するのに役立ちます。これは、Windowsに簡単な診断チェックを行うようなものです。

  • コマンドプロンプトを管理者として開きます。検索バーに「cmd」と入力し、右クリックして「管理者として実行」を選択することで実行できます。
  • sfc /scannowと入力してEnterキーを押してください。システムファイルのスキャンと修復が行われます。数分かかる場合があります。
  • SFCでエラーが発生した場合は、以下のコマンドを順番に実行してください。
    • DISM /Online /Cleanup-Image /CheckHealth
    • DISM /Online /Cleanup-Image /ScanHealth
    • DISM /Online /Cleanup-Image /RestoreHealth
  • 全て終わったら、再起動してください。

これは、Windows の基本的な破損を修復するのに役立ちます。破損が原因で、CompatTelRunner などのサービスが過剰に動作してしまうことがあります。なぜ効果があるのか​​は不明ですが、一部のマシンでは、SFC と DISM による簡単な修復で CPU 占有の問題が解消されます。

解決策2:タスクスケジューラを使用してMicrosoft互換性評価ツールを無効にする

このプロセスは、古いアプリの互換性をチェックするもので、理論上は素晴らしいのですが、多くの環境ではCPUを無駄に消費するだけです。これを無効にすることで、その問題を解消できます。

  • を押してWindows key + R「ファイル名を指定して実行」ダイアログを開きます。
  • taskschd.mscと入力してEnter キーを押します。これでタスクスケジューラが開きます。
  • ライブラリ> Microsoft > Windows >アプリケーション エクスペリエンスに移動します。
  • 中央のペインで「Microsoft互換性評価ツール」のタスクを探してください。
  • それらを右クリックして「無効にする」を選択してください。確かに強引な方法ですが、プロセスの実行を完全に停止させることができます。
  • 再起動して、CPU使用率が正常に戻るかどうか確認してください。

環境によっては、この方法でCPUの過負荷状態を完全に解消できます。自動的な互換性チェックが一部機能しなくなる可能性はありますが、正直なところ、その後何か重大な問題が生じたとは感じていません。ただし、この後Windowsの動作がおかしくなった場合は注意してください。

修正方法3:レジストリを調整してテレメトリスクリプトを停止する

これはある意味、最終手段と言えるでしょう。CompatTelRunnerの過剰使用を引き起こしている可能性のあるデータ収集を停止するのです。ただし、管理者権限が必要であり、レジストリを操作すると、注意しないと予期せぬ問題が発生する可能性があるので注意してください。

  • を押してWindows key + Rregeditと入力し、Enter キーを押します。
  • 移動先:
    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection
  • キーDataCollection が存在しない場合は、 Microsoftを右クリックし、[新規] > [キー]を選択して、DataCollection という名前を付けます。
  • 右側のペインで右クリックし、[新規] > [DWORD (32 ビット) 値]を選択します。名前を [ Allow Telemetry]とします。
  • 新しい値をダブルクリックして、値を0に設定し、[OK]をクリックします。
  • 再起動してください。これにより、バックグラウンドでのデータ収集が減り、CPU使用率も低下する可能性があります。

これは一種の「密告機能をオフにする」アプローチと言えるでしょう。Windowsがなぜこれほど多くの情報を盗み見する必要があるのか​​は完全には理解できませんが、リソースの過剰消費を抑えるのに役立つ場合もあるようです。

修正4:グループポリシーを使用してテレメトリを無効にする

Windows 10/11 ProまたはEnterpriseを使用している場合は、この方法で診断データポイントの実行を停止できます。

  • スタートメニューで「グループポリシー」を検索し、 「グループポリシーの編集」をクリックします。
  • コンピューターの構成 > 管理用テンプレート > Windows コンポーネント > データ収集とプレビュー ビルドに移動します。
  • 「テレメトリを許可する」をダブルクリックします。
  • 「無効」に設定してください。「OK」をクリックします。
  • ポリシーを有効にするには再起動してください。その後、CPU使用率が低下する場合があります。

Windowsは時として、不必要にバックグラウンドプロセスを稼働させ続けることがありますが、これはそうしたプロセスをある程度抑制します。

修正5:CompatTelRunner.exeを削除または名前変更する

最終手段として、他の方法がすべて失敗した場合に使用します。基本的には、問題の原因となっているファイルを削除します。ただし、重要なアップデートチェックやレポート機能に支障をきたす可能性があるため、注意が必要です。慎重に使用してください。

  • ファイルエクスプローラーを開き、C:\Windows\System32に移動します。
  • CompatTelRunner.exeを探してください。右クリックして「プロパティ」を選択します。
  • 「セキュリティ」タブに移動し、「詳細設定」をクリックします。
  • 所有者(おそらく TrustedInstaller)の横にある「変更」をクリックします。 「Administrators」と入力し、「名前の確認」をクリックしてから「OK」をクリックします。
  • 「管理者」グループを選択し、「編集」をクリックします。「フルコントロール」にチェックを入れ、変更を適用します。
  • 次に、もう一度右クリックして「削除」を選択します。Windowsが通常の操作で削除をブロックする場合は、セーフモードから実行する必要があるかもしれません。
  • 再起動して、CPUの動作が改善されるかどうか確認してください。

一部のマシンでは、これでプロセスが完全に終了するはずですが、注意が必要です。後でWindowsが予期せぬ動作をする可能性があります。念のためバックアップを取るか、ファイルを削除する前に復元ポイントを作成してください。

まとめ

  • システム整合性を確認するためにSFCとDISMを実行してください。
  • タスクスケジューラで互換性評価ツールを無効にする
  • レジストリ設定を編集してテレメトリを制限する
  • グループポリシーを使用してデータ収集を無効にする
  • どうしても必要な場合は、CompatTelRunner.exe を削除または名前変更してください。

まとめ

CompatTelRunner.exe が原因で CPU 使用率が高くなると、動作が非常に遅くなることがあります。ここで紹介する方法は、その問題を迅速に解決するための最も手っ取り早い方法です。すべての PC で有効な方法とは限りませんので、試行錯誤が必要になる場合もあります。システム ファイルやレジストリを操作する場合は、必ずバックアップを取っておくようにしてください。Windows はそもそも扱いが難しいOSですから。この方法で CPU 使用率の上昇が解消され、マシンが通常の動作の遅さはあるものの、まだ使える状態に戻ることを願っています。これで誰かの作業時間を少しでも短縮できれば幸いです。