多くの場合、Windows 10PC上のプログラムがグラフィックハードウェアへのアクセスを拒否されることがあります。このメッセージは、アプリケーションがグラフィックハードウェアへのアクセスをブロックされていることを示しています。一般的なシナリオの1つは、ゲームをプレイしているときに何らかの理由でPCがスタックした場合です。これはどういうわけかドライバーを誤って構成し、アプリケーションがグラフィックスドライバーにアクセスしようとすると、失敗するだけです。このガイドでは、Windows10アプリケーションがグラフィックスハードウェアエラーへのアクセスをブロックされていることを修正する方法を共有します。
私の経験では、この問題は主に、ドライバーが既存のWindows 10バージョンと互換性がない場合に発生し、メジャーアップデート後にほとんど失敗します。これにより、GPUがグラフィックス要求に応答するのに時間がかかり、ほとんどの場合失敗します。考えられる解決策を見てみましょう。
アプリケーションがグラフィックハードウェアにアクセスするのをブロックされました
1]グラフィックカードドライバをアンインストールして再インストールします
これはあなたが試す必要がある最初のことです。多くの場合、WindowsUpdateからダウンロードしたドライバーが正しく構成されていません。最善の方法は、OEMサイトから最新のドライバーをダウンロードすることです。グラフィックカード名の詳細を使用してWebサイトで検索する必要があります。ドライバーのアンインストールと再インストールに関する投稿を確認してください。ドライバーをインストールするときは、必ずWindows10のプログラム互換モードを実行してください。
2]ハードウェアデバイスのトラブルシューティングを実行します
Windowsには、ハードウェアデバイスのトラブルシューティングを行うためのツールが組み込まれています。[設定]> [更新とセキュリティ]> [トラブルシューティング]から利用できます。それを実行すると、アプリケーションで修正できる問題がある場合は修正されます。ハードウェアデバイスのトラブルシューティングの使用方法の詳細をお読みください。
3]アプリケーションにグラフィックハードウェアへのアクセスを許可する
Windows 10のグラフィック設定で、アプリケーション専用のグラフィックカードを使用できるようになりました。これは、グラフィックハードウェアにアクセスする特定のアプリケーションで問題が発生した場合に機能します。WIN32アプリケーションとストアのアプリの両方で機能します。
この特定のオプションは、[設定]> [ディスプレイ]> [グラフィック設定]にあります。これを使用してもパフォーマンスは向上しませんが、バッテリーの寿命を大幅に節約することもできます。Windows10でのグラフィック設定の使用の詳細をご覧ください。
4] TDRチェッカーを無効にする
TDRは、Timeout Detection andRecoveryの略です。この機能は、Windows Vistaで最初に登場し、Windows 10まで存在していました。システムは、OSが一定時間内に応答を受信できなかった場合に、システムグラフィックスを回復するように構築されています。デフォルトは2秒に設定されています。
集中的な作業のためにグラフィックカードに時間がかかり、OSが問題を認識し、回復方法としてグラフィックを再起動する場合があります。現在提案しているソリューションでは、TDR時間が8秒以上に増加します。これにより、OSが反応するためのより多くのウィンドウが提供されます。
注:これらのキーが見つからない場合は、docs.microsoft.comのガイドに従って作成することをお勧めします。
- PC上のすべてのアプリケーションを終了します。
- 検索ボックスに「regedit」と入力し、管理者権限で起動します。
- HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet002 \ Control \ GraphicsDriversまたはHKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Control \ GraphicsDriversのいずれか利用可能な方を参照します。
Windowsのバージョン、つまり32ビットまたは64ビットに応じて、次の手順を実行します。
32ビットWindowsの場合:
- DWORD(32ビット)値を選択します。
- 名前としてTdrDelayと入力し、Enterをクリックします。
- TdrDelayをダブルクリックし、値データに8を追加して、[OK]をクリックします。
64ビットWindowsの場合:
- QWORD(64ビット)値を選択します。
- 名前としてTdrDelayと入力し、Enterをクリックします。
- TdrDelayをダブルクリックし、値データに8を追加して、[OK]をクリックします。
この後、PCを再起動して、変更を実行できるようにします。
レジストリを変更すると、Tdrチェッカーにさらに8秒の遅延が追加されます。したがって、GPUが10秒以内に応答しても、それでも機能します。正確に何が機能するかを確認するには、この値を変更する必要がある場合があります。
それでも機能しない場合は、積極的な措置を講じて、TDRを完全にオフにする必要があります。これを行うには、「TdrLevel」を変更してデータ値を0として入力し、TdrDelayキーを削除します。
PCをもう一度再起動します。
これらすべての提案がお役に立てば幸いです。問題を解決するものを見つけた場合は、コメントでお知らせください。