ゲームが勝手に最小化される原因と直し方|Windows 11でフォーカスを奪うアプリをPowerShellで特定する方法

ゲームが勝手に最小化される原因と直し方|Windows 11でフォーカスを奪うアプリをPowerShellで特定する方法

本記事にはアフィリエイト広告(Amazon・楽天市場等)のリンクが含まれています。

トラブル・設定/Windows 11
ゲームが勝手に最小化される原因と直し方
Windows 11でフォーカスを奪うアプリをPowerShellで特定する方法
PCゲームをプレイ中に、何も操作していないのに突然デスクトップへ戻される「勝手に最小化される」症状は、ゲーム自体の不具合とは限りません。バックグラウンドで動くアップデーターやオーバーレイが新しいウィンドウを開き、ゲームからキーボード入力の対象(フォアグラウンドウィンドウ)を奪っている可能性があります。まずはボーダーレスウィンドウへの変更と「応答不可」の自動有効化で症状を緩和し、直らない場合は本記事で紹介するPowerShellスクリプトでフォーカスを奪ったプロセスを記録して原因を特定します。
まずボーダーレス化+応答不可を試すオーバーレイ・アップデーターが主因PowerShellでフォーカス奪取アプリを特定

PCゲームをプレイしている最中に、何も操作していないのに突然デスクトップへ戻されることがあります。オンライン対戦中に発生すると、画面をゲームへ戻すまで操作できなくなり、そのまま倒されてしまうこともあります。

この症状は、ゲームが単独で最小化しているとは限りません。バックグラウンドで動いているアップデーター、ランチャー、オーバーレイ、周辺機器用ソフトなどが新しいウィンドウを開き、ゲームからキーボード入力の対象を奪っている可能性があります。

Windowsでは、ユーザーが現在操作しているウィンドウを「フォアグラウンドウィンドウ」として扱います。別のアプリがフォアグラウンドへ移動すると、そのアプリへキーボード入力が送られます。排他的フルスクリーンで動作しているゲームは、フォーカスを失った時に最小化されることがあります。MicrosoftのWin32 APIにも、現在のフォアグラウンドウィンドウを取得するGetForegroundWindowと、指定したウィンドウを前面へ移動するSetForegroundWindowが用意されています。

最初にゲームをボーダーレスウィンドウへ変更し、Windows 11の「応答不可」を有効にしてください。根本原因を調べる場合は、この記事で紹介するPowerShellスクリプトを起動したままゲームをプレイすると、ゲームが最小化された直後に前面へ移動したプロセスをCSVファイルへ記録できます。

目次

切り分けゲームが最小化されたのか、クラッシュしたのかを確認する

原因を調べる前に、ゲームのプロセスが残っているか確認してください。

ゲームが勝手に最小化された後、タスクバーのアイコンをクリックしてすぐにゲームへ戻れる場合は、ゲームのプロセスは動作を続けています。別のアプリへフォーカスが移った可能性を優先して調べます。

タスクバーからゲームへ戻れず、Steamのボタンも「プレイ」へ戻っている場合は、最小化ではなくクラッシュまたは強制終了の可能性があります。この場合の対処法はSteamで「プレイ」を押してもすぐ戻る原因と直し方で詳しく解説しています。

PCそのものが再起動する、ブルースクリーンになる、操作を受け付けないままフリーズするといった症状が併発している場合は、ゲームの最小化ではなくPC側のハードウェアやドライバーに問題がある可能性があります。詳しい診断手順はゲーム中にPCが落ちる・固まる原因と直し方で解説しています。

一瞬画面が真っ暗になり、その後デスクトップへ戻る場合も、GPUドライバーの再起動、表示モードの切り替え失敗、ゲームのクラッシュなどが考えられます。

今回の記事では、ゲーム自体は動き続けているものの、突然デスクトップや別のアプリへ切り替わる症状を中心に解説します。

背景ゲームが勝手に最小化される仕組み

Windowsでは、同時に複数のアプリが開いていても、キーボード入力を直接受け取るフォアグラウンドウィンドウは基本的に一つです。Microsoftも、画面上に複数のウィンドウがあっても、その時点で入力を受け取るのは一つのウィンドウだと説明しています。

ゲームのプレイ中に別のアプリがウィンドウを開き、そのウィンドウがフォアグラウンドになると、ゲームは入力対象ではなくなります。

Windowsは、すべてのアプリが自由に他のウィンドウからフォーカスを奪えるようには設計されていません。SetForegroundWindowを利用できるプロセスには条件があり、条件を満たさないアプリは通常、タスクバーのアイコンを点滅させてユーザーへ通知します。

ただし、ユーザーが直前に操作したアプリ、そのアプリから起動された別プロセス、入力イベントを受け取ったプロセスなどは、条件によってフォアグラウンドへ移動できます。

ゲームランチャーから起動されたアップデーターや、ユーザーが操作中のオーバーレイに関連するプロセスが前面へ出る場合があるのはこのためです。

常駐更新アップデーターや確認画面が前面へ表示されている

ゲームが起動してから一定時間後に最小化される場合は、バックグラウンドアプリの自動更新を疑います。

ソフトウェアのアップデート確認、再起動要求、ログイン期限切れ、利用規約の更新、デバイスの再接続、バックアップの失敗などを知らせるダイアログが突然開くと、ゲームからフォーカスが移ることがあります。

特に、マザーボード用ユーティリティ、RGB制御ソフト、マウスやキーボードの設定ソフト、プリンターソフト、クラウドストレージ、外部ゲームランチャーなどは、Windowsへのサインイン時からバックグラウンドで動作することがあります。

毎日ほぼ同じ時刻に発生する場合は、常駐アプリだけでなく、タスクスケジューラに登録された更新処理も確認してください。

Windowsのタスクスケジューラは、指定時刻、ログオン時、PC起動時、アイドル時、特定イベントの発生時などを条件として、アプリや処理を自動実行できます。

オーバーレイSteamやDiscordなどのオーバーレイが干渉している

ゲーム内オーバーレイは、ゲームの上に別の操作画面を表示する機能です。

Steamオーバーレイ、Discordゲームオーバーレイ、Xbox Game Bar、NVIDIA App、AMD Software、録画ソフト、fps表示ソフトなどを同時に使用すると、複数のアプリがゲーム画面や入力を監視する状態になります。

Discordは、ゲームオーバーレイ有効時にラグ、クラッシュ、そのほかの問題が発生する場合、問題が起きるゲームだけオーバーレイを無効にするよう案内しています。

Steamも、クライアント全体またはゲーム単位でSteamオーバーレイを有効・無効にできる設定を用意しています。

AMD Softwareにはゲーム内オーバーレイのほか、「常に手前に表示」「トースト通知」「ゲーム設定の追跡と通知」などの設定があります。問題を切り分ける時は、オーバーレイだけでなく、これらの通知機能も一時的に無効にして確認してください。

オーバーレイを一度にすべて無効にすると、どれが原因だったのか判断できません。

Steam、Discord、GPU用ソフト、Xbox Game Barの順に一つずつ無効にし、そのたびにゲームを再起動して確認します。

キー競合オーバーレイのショートカットを誤って押している

ゲームのキー設定と、オーバーレイのショートカットが重複している場合があります。

Steamオーバーレイは通常Shift+Tab、Discordオーバーレイは設定されたオーバーレイキー、NVIDIA AppはAlt+Z、Xbox Game BarはWindowsキー+Gなどで開きます。

ゲーム内で同時押しを多用すると、意図せずオーバーレイや別画面を開くことがあります。

ゲームパッドのXboxボタンからXbox Game Barが開く設定もあります。Microsoftの案内でも、Windowsキー+GまたはコントローラーのXboxボタンからGame Barを表示できるとされています。

最小化が特定のキー操作直後に発生する場合は、ゲーム側のキー設定だけでなく、Steam、Discord、NVIDIA App、AMD Software、Xbox Game Barのショートカットも確認してください。

誤操作WindowsキーやAlt+Tabを誤って押している

ゲーム中にWindowsキー、Alt+Tab、Windowsキー+Dなどを押すと、スタートメニューやデスクトップへ切り替わります。

キーボードのWindowsキーロック機能を有効にすると、ゲーム中の誤操作を防げる場合があります。

Windowsキーロックに対応していないキーボードでも、メーカーの設定ソフトにゲームモードが用意されていることがあります。

ただし、Windowsキーを無効にしても、別のアプリがフォーカスを奪う問題は解決しません。

特定のキー操作直後にだけ発生するなら誤操作を疑い、何も触っていない状態でも発生するならバックグラウンドアプリを調べてください。

Alt+Tab関連の別の症状(切り替え後に画面が暗転する等)についてはゲームでAlt+Tabを押すと画面が暗転する原因で解説しています。

モニターサブモニターを誤クリックしている

デュアルモニター環境では、ゲーム中のマウスカーソルがサブモニターへ移動し、別画面をクリックしている可能性があります。

排他的フルスクリーンのゲームでサブモニターをクリックすると、ゲームがフォーカスを失って最小化されることがあります。

視点を大きく動かした時や、画面右端・左端をクリックした時だけデスクトップへ戻る場合は、フォーカスを奪う常駐アプリよりも、カーソル固定の問題を優先して確認してください。

この症状については、PCゲーム中にマウスカーソルが別モニターへ移動する原因で、表示モードやカーソル固定の対処法を詳しく解説しています。

表示モード排他的フルスクリーンがフォーカス喪失時に最小化されている

排他的フルスクリーンは、ゲームが画面を占有して表示する方式です。

別のアプリへフォーカスが移った時は、ゲーム画面を維持できず、デスクトップへ戻ることがあります。

ボーダーレスウィンドウは、見た目はフルスクリーンに近いものの、Windows上ではウィンドウとして動作します。別アプリへフォーカスが移っても、ゲーム画面が完全に最小化されにくいのが利点です。

Windows 11は、DirectX 10およびDirectX 11のウィンドウゲームやボーダーレスゲームを対象にした「ウィンドウゲームの最適化」を備えています。ゲーム単位で有効・無効を切り替えられます。

最小化をすぐに防ぎたい場合は、ゲーム内の表示モードを「ボーダーレス」「ボーダーレスウィンドウ」「ウィンドウフルスクリーン」などへ変更してください。

これはフォーカスを奪うアプリを停止する根本対処ではありませんが、原因を調べている間の回避策として有効です。

通知設定ゲーム中だけ「応答不可」を自動で有効にする

Windows 11の「応答不可」を有効にすると、ゲーム中に表示される通知バナーを減らせます。

「設定」「システム」「通知」を開き、「応答不可を自動的にオンにする」を展開します。

「ゲームをプレイしているとき」と「アプリを全画面表示モードで使用しているとき」を有効にしてください。

Microsoftによると、応答不可は指定条件で自動的に有効化でき、ゲーム中や全画面アプリ使用中も条件に含まれます。応答不可の間に抑制された通知は通知センターへ送られ、後から確認できます。

応答不可は通知バナーを抑える機能です。アップデーターが独立した確認ウィンドウを開く、別アプリがエラーダイアログを表示する、管理者権限を要求するといった動作までは防げません。

応答不可で改善しない場合は、実際にフォーカスを取得したプロセスを記録してください。

調査ツールPowerShellでフォーカスを奪ったアプリを記録する

ゲームが不定期に最小化される場合は、PowerShellでフォアグラウンドウィンドウの変化を記録すると原因を絞れます。

以下のスクリプトは、前面に表示されているウィンドウが変わるたびに、時刻、プロセスID、プロセス名、ウィンドウタイトル、実行ファイルの場所をCSVへ保存します。

MicrosoftのGetForegroundWindowで現在の前面ウィンドウを取得し、GetWindowThreadProcessIdでそのウィンドウを作成したプロセスIDを取得する仕組みです。ウィンドウタイトルはGetWindowTextで取得します。

Windowsのスタートボタンを右クリックし、「ターミナル」を開きます。管理者として起動する必要はありません。

次のコードをすべて貼り付けてEnterキーを押してください。

PowerShell|フォーカス記録スクリプト(focus-history.csv を生成)
$nativeCode = @'
using System;
using System.Runtime.InteropServices;
using System.Text;

namespace FocusTracker
{
    public static class NativeMethods
    {
        [DllImport("user32.dll")]
        public static extern IntPtr GetForegroundWindow();

        [DllImport("user32.dll")]
        public static extern uint GetWindowThreadProcessId(
            IntPtr hWnd,
            out uint processId
        );

        [DllImport("user32.dll", CharSet = CharSet.Unicode)]
        public static extern int GetWindowText(
            IntPtr hWnd,
            StringBuilder text,
            int count
        );
    }
}
'@

if (-not ("FocusTracker.NativeMethods" -as [type])) {
    Add-Type -TypeDefinition $nativeCode
}

$desktopPath = [Environment]::GetFolderPath("Desktop")
$logPath = Join-Path $desktopPath "focus-history.csv"
$lastWindow = [IntPtr]::Zero

Write-Host "フォーカスの記録を開始しました。"
Write-Host "ゲームが最小化された後、Ctrl+Cで終了してください。"
Write-Host "保存先: $logPath"

while ($true) {
    try {
        $windowHandle = [FocusTracker.NativeMethods]::GetForegroundWindow()

        if (
            $windowHandle -ne [IntPtr]::Zero -and
            $windowHandle -ne $lastWindow
        ) {
            [uint32]$processId = 0

            [void][FocusTracker.NativeMethods]::GetWindowThreadProcessId(
                $windowHandle,
                [ref]$processId
            )

            $titleBuilder = [System.Text.StringBuilder]::new(1024)

            [void][FocusTracker.NativeMethods]::GetWindowText(
                $windowHandle,
                $titleBuilder,
                $titleBuilder.Capacity
            )

            $processName = "Unknown"
            $processPath = ""

            try {
                $process = Get-Process -Id $processId -ErrorAction Stop
                $processName = $process.ProcessName

                try {
                    $processPath = $process.Path
                }
                catch {
                    $processPath = ""
                }
            }
            catch {
                $processName = "Unknown"
            }

            $record = [pscustomobject]@{
                Time        = (Get-Date).ToString(
                    "yyyy-MM-dd HH:mm:ss.fff"
                )
                ProcessId   = $processId
                ProcessName = $processName
                WindowTitle = $titleBuilder.ToString()
                Path        = $processPath
            }

            $record |
                Export-Csv `
                    -Path $logPath `
                    -Append `
                    -NoTypeInformation `
                    -Encoding UTF8

            Write-Host (
                "{0}  {1}  {2}" -f
                $record.Time,
                $record.ProcessName,
                $record.WindowTitle
            )

            $lastWindow = $windowHandle
        }
    }
    catch {
        Write-Warning $_.Exception.Message
    }

    Start-Sleep -Milliseconds 100
}

「フォーカスの記録を開始しました」と表示されたら、ターミナルを開いたままゲームを起動します。

ゲームが勝手に最小化されたら、ターミナルへ戻ってCtrl+Cを押してください。

デスクトップに作成されたfocus-history.csvをExcelやメモ帳で開き、最小化した時刻の前後を確認します。

ログ解析フォーカス履歴の読み方

CSVでは、ゲームのプロセス名の次に記録されたアプリを確認します。

たとえば、ゲームの直後に周辺機器用ソフト、アップデーター、ゲームランチャーなどが記録されていれば、そのアプリがフォアグラウンドへ移動した可能性があります。

ウィンドウタイトルに「Update」「Sign in」「Restart required」「Device disconnected」などが含まれていれば、更新やログイン、デバイス関連の確認画面を疑えます。

explorerが記録されている場合は、デスクトップ、タスクバー、スタートメニューなどへフォーカスが移っています。

ただし、explorerが記録されたからといって、必ずWindows Explorerが原因とは限りません。ゲームが別の理由で自ら最小化した結果、背後にあったデスクトップが前面になった可能性もあります。CSVに記録されたプロセスは「最小化後に前面へ出たもの」であり、単独では原因を断定できません。

同じプロセスが毎回同じタイミングで記録されるか、ウィンドウタイトルに確認画面の内容が残っているかを確認してください。ゲームのプロセスが一度消えて再び記録される場合は、フォーカス移動ではなく、ゲーム内ランチャーやレンダラーがプロセスを切り替えている可能性もあります。

ログには文書名やチャット相手も記録される

このスクリプトはウィンドウタイトルを記録するため、ブラウザーのページ名、チャット相手、作業中の文書名などがCSVへ保存される場合があります。第三者へログを送る場合は、個人情報や非公開情報を削除してから共有してください。

上級調査Process Monitorで同時刻に起動したプロセスを確認する

PowerShellの履歴だけでは原因を断定できない場合は、Microsoft SysinternalsのProcess Monitorを使用します。

Process Monitorは、Windows上のファイルシステム、レジストリ、プロセス、スレッドの動作をリアルタイムで記録できるMicrosoft公式ツールです。プロセスの実行パス、コマンドライン、親子関係なども確認できます。

Process Monitor自体は、どのウィンドウがフォーカスを取得したかを直接記録するツールではありません。PowerShellで記録した最小化時刻を基準にし、その直前に新しいプロセスが起動していないか確認するために使用します。

Process Monitorを起動して記録を開始し、ゲームが最小化されたらすぐに記録を停止します。イベント一覧から最小化した時刻付近を確認し、アップデーター、通知用プログラム、クラッシュレポーター、ランチャーなどが新しく起動していないか調べてください。

イベント数が多い場合は、Process Name、Process ID、Operation、時刻などでフィルターを設定します。PowerShellのCSVに記録されたプロセス名と同じ名前をProcess Monitorで検索すると、そのプロセスをどのアプリが起動したか、どの実行ファイルから動いているかを判断しやすくなります。

自動実行タスクスケジューラの最終実行時刻を確認する

毎日ほぼ同じ時間や、PC起動から一定時間後にゲームが最小化される場合は、タスクスケジューラを確認します。

Windowsの検索欄へ「タスクスケジューラ」と入力して起動し、「タスクスケジューラライブラリ」を開きます。

一覧の「前回の実行時刻」を確認し、ゲームが最小化された時刻と一致するタスクがないか調べてください。タスク名だけで判断せず、「操作」画面で実行されるプログラムのパスを確認します。

Microsoftのタスクや、Windowsに必要な処理を無効にしてはいけません。メーカー名が明確なサードパーティー製アップデーターや、すでにアンインストールしたソフトの残存タスクが見つかった場合は、そのソフトの設定画面や公式アンインストーラーから停止・削除します。

タスクスケジューラは、時刻だけでなくログオン、PC起動、アイドル状態、システムイベントなどをきっかけにアプリを実行できます。発生時刻が一定でなくても、ゲーム中にPCがアイドル解除されたタイミングなどで実行される可能性があります。

常駐整理スタートアップアプリを減らす

Windowsへのサインイン時に自動起動するアプリを減らすと、フォーカスを奪う可能性がある常駐ソフトを絞れます。

Ctrl+Shift+Escでタスクマネージャーを開き、「スタートアップアプリ」を選択します。ゲーム中に必要のないアプリを選び、「無効化」を押してください。

Microsoftも、タスクマネージャーのスタートアップアプリ画面から、自動起動するアプリを有効または無効にできると案内しています。

無効にする候補は、ゲーム中に使わないアップデーター、クラウド同期、周辺機器ソフト、プリンターソフト、チャットアプリ、各種ランチャーなどです。GPUドライバー本体、オーディオドライバー、Windowsセキュリティなど、役割を理解できない項目を無効にするのは避けてください。

スタートアップを無効にしてもアプリ自体はアンインストールされません。必要な時に手動で起動できるため、原因の切り分けとして比較的試しやすい方法です。

総点検クリーンブートで原因アプリを絞り込む

PowerShellの履歴に原因が残らない場合や、複数の常駐サービスが疑われる場合は、Windowsをクリーンブート状態にして確認します。

Windowsの検索欄へmsconfigと入力し、「システム構成」を開きます。「サービス」画面で「Microsoftのサービスをすべて隠す」を必ず有効にしてから、残ったサードパーティー製サービスを無効にします。

続いて「スタートアップ」からタスクマネージャーを開き、有効になっているスタートアップアプリを無効化してPCを再起動します。

Microsoftも、クリーンブートをアプリやゲームへ干渉するバックグラウンドサービスの特定方法として案内しています。Microsoft以外のサービスとスタートアップアプリを停止し、問題が消えた場合は、停止した項目を半分ずつ戻して原因を絞り込めます。

クリーンブート中は、一部の周辺機器機能、同期機能、アップデート機能などが一時的に使えなくなる場合があります。

確認が終わったらmsconfigを開き、「全般」で「通常スタートアップ」を選択し、無効にしたサービスとスタートアップアプリを元へ戻してください。「ブート」画面にある詳細な起動設定は変更しないでください。今回使用するのは、Microsoft以外のサービスとスタートアップアプリを一時停止する手順だけです。

対処手順原因アプリが分かった後の対処法

原因と思われるアプリが判明しても、すぐにファイルを手作業で削除しないでください。

最初に対象アプリを最新版へ更新し、PCを再起動します。

更新後も再発する場合は、アプリ内の自動更新通知、ゲームオーバーレイ、常に手前に表示、デバイス接続通知、ゲーム検出、広告表示などの設定を無効にします。ゲーム中に必要のないアプリなら、スタートアップを無効にして、使用する時だけ手動起動する方法もあります。

使っていないソフトであれば、「設定」「アプリ」「インストールされているアプリ」からアンインストールしてください。アンインストール後も同じプロセスやタスクが動く場合は、アプリの公式削除ツールやサポート情報を確認します。

実行ファイルだけを削除すると、サービス、ドライバー、タスクスケジューラ、レジストリ設定などが残る可能性があります。

Steam設定Steamオーバーレイをゲーム単位で無効にする

Steamライブラリで問題が発生するゲームを右クリックし、「プロパティ」を開きます。「一般」にある「ゲーム中にSteamオーバーレイを有効にする」をオフにし、ゲームを再起動してください。

Steamは、クライアント全体だけでなく、各ゲームのプロパティから個別にオーバーレイを切り替えられると案内しています。

無効にすると、Shift+Tabで開くフレンド機能、ブラウザー、一部のスクリーンショット機能、ゲーム内購入などへ影響する場合があります。最小化が改善しなければ設定を元へ戻して構いません。

Discord設定Discordゲームオーバーレイを無効にする

Discordのユーザー設定を開き、「ゲームオーバーレイ」からオーバーレイを無効にします。ゲームごとに有効・無効を切り替えられる場合は、問題が発生するタイトルだけを対象外にしてください。

Discordは、オーバーレイ有効時にゲームのラグ、クラッシュ、そのほかの問題が発生する場合、対象ゲームでオーバーレイを無効にすることを推奨しています。

Discordを完全終了すると直るものの、オーバーレイだけを無効にしても直らない場合は、通知、通話画面、ハードウェアアクセラレーション、関連するSystem Helperなど、別の機能が影響している可能性があります。まずPowerShellの履歴で、どのDiscord関連プロセスやウィンドウが前面へ出ているか確認してください。

GPU設定NVIDIA AppやAMD Softwareのオーバーレイを無効にする

NVIDIA Appのオーバーレイを無効にするゲーム内オーバーレイ、録画、インスタントリプレイ、パフォーマンス表示などを一時的に無効にします。NVIDIA Appは、録画、パフォーマンス監視、ゲームフィルターなどへアクセスするゲーム内オーバーレイを備えており、古い未対応ドライバーではオーバーレイ機能が正常に動かない場合があるとNVIDIAも案内しています。
AMD Softwareのオーバーレイと通知を無効にする設定を開き、「Preferences」から「In-Game Overlay」を無効にします。あわせて「Toast Notifications」「Game Adjustment Tracking and Notifications」「Always On Top」が有効になっていないか確認してください。これらの設定項目はAMD公式サポートにも記載されています。

オーバーレイを無効にして直った場合は、GPUドライバー全体を削除する前に、オーバーレイ機能だけを無効にした状態で運用できるか確認してください。

更新確認Windows 11とアプリを更新する

Windows Updateを開き、保留中の累積更新や再起動がないか確認してください。

続いて、原因として記録されたアプリ、Steamなどのゲームランチャー、GPUドライバー、周辺機器用ソフトを更新します。

古いアプリがWindows 11の現在のウィンドウ管理や通知機能へ対応できていない場合、アップデートによって改善する可能性があります。反対に、特定アプリの更新直後から発生した場合は、そのアプリの既知の問題や更新履歴を確認してください。

自動更新を止めるだけでは脆弱性や不具合が残るため、利用を続けるアプリは最新版への更新を優先します。

個別確認特定ゲームだけで起きる場合はゲーム側の不具合も確認する

同じ常駐アプリを動かしていても、一つのゲームだけが最小化される場合は、そのゲームの表示モードやフォーカス復帰処理に問題がある可能性があります。

排他的フルスクリーンからボーダーレスへ変更し、ゲームを完全に再起動してください。

すでにボーダーレスを使用している場合は、Windows 11の「設定」「システム」「ディスプレイ」「グラフィック」から対象ゲームを選び、「ウィンドウゲームの最適化」をゲーム単位で切り替えて比較します。Microsoftも、この機能をアプリごとに無効化できると案内しています。

ゲームファイルの整合性確認や設定ファイルの初期化も有効な場合があります。ただし、設定ファイルにはセーブデータが含まれることがあるため、削除せず別フォルダへ移動してバックアップしてください。

関連症状最小化と同時に画面が暗転する場合

最小化される直前に画面が真っ暗になる、モニターから信号が消える、GPUドライバーの通知が表示される場合は、フォーカスを奪うアプリ以外の原因も考えられます。

GPUドライバーのリセット、解像度やリフレッシュレートの切り替え、HDR、DisplayPort接続、オーバークロック、ゲームのクラッシュなどを確認してください。

PowerShellの履歴で、ゲームの直後に明確な別アプリが記録されていない場合は、ゲーム自体が表示モードを失った結果としてデスクトップへ戻った可能性があります。

Alt+Tab後に暗転する症状については、ゲームでAlt+Tabを押すと画面が暗転する原因で、表示モード、HDR、GPUドライバーを含めた対処法を解説しています。

注意やってはいけない対処法

システムプロセスの無効化・レジストリ変更は最初の手段にしない

フォーカスを奪っている可能性があるという理由だけで、WindowsのシステムプロセスやMicrosoftサービスを無効にしないでください。タスクスケジューラに登録されているMicrosoft製タスクを、内容を確認せず一括削除するのも避けてください。レジストリのForegroundLockTimeoutなどを変更し、アプリのフォーカス制御を強制的に変える方法も最初には推奨できません。Windowsはアプリがフォアグラウンドへ移動できる条件を制限しており、設定を変更するとゲーム以外の通知やアプリ操作へ影響する可能性があります。まずPowerShellの履歴、スタートアップアプリ、タスクスケジューラ、クリーンブートで原因を特定してください。原因が分からないままWindowsを初期化したり、ゲームを再インストールしたりする必要もありません。常駐アプリが原因なら、ゲームを再インストールしても症状が再発する可能性があります。

FAQよくある質問

ゲームが数時間に1回だけ最小化されます
一定間隔で動くアップデーター、クラウド同期、デバイス確認、タスクスケジューラの処理が原因になっている可能性があります。PowerShellのフォーカス記録を数時間動かし、発生した時刻と前面へ出たプロセスを確認してください。毎回ほぼ同じ時刻なら、タスクスケジューラの「前回の実行時刻」も確認します。
通知をオフにすれば直りますか
通知バナーや通知音がきっかけになっている場合は改善する可能性があります。Windows 11では、ゲーム中と全画面アプリ使用中に「応答不可」を自動で有効化できます。ただし、応答不可は独立した確認ウィンドウ、エラーダイアログ、アップデーター、管理者権限の要求までは止めません。応答不可で直らない場合は、前面ウィンドウの履歴を記録してください。
ボーダーレスにすると直るのはなぜですか
排他的フルスクリーンは、フォーカスを失った時に画面の占有状態が解除され、最小化されることがあります。ボーダーレスは通常のウィンドウに近い方式で表示されるため、別アプリへフォーカスが移ってもゲーム画面を維持しやすくなります。ただし、フォーカスを奪ったアプリそのものが停止したわけではありません。キーボードやマウス操作が効かなくなる場合は、原因アプリの特定も行ってください。
PowerShellのログにexplorer.exeしか表示されません
ゲームが最小化した結果、デスクトップを管理するExplorerが前面になった可能性があります。Explorerが原因とは限りません。最小化直前の行、同時刻に起動したプロセス、通知の有無、Process Monitorの記録も確認してください。毎回Explorerの前に同じアプリが一瞬記録されている場合は、そのアプリを優先して調べます。
PowerShellスクリプトは安全ですか
記事内のスクリプトは、現在の前面ウィンドウと関連プロセスの情報を読み取り、デスクトップ上のCSVへ保存します。アプリの終了、設定変更、ファイル削除、外部へのデータ送信は行いません。ただし、ウィンドウタイトルに文書名やチャット相手などが含まれることがあります。ログを他人へ渡す場合は内容を確認してください。
Steamのゲームだけで発生します
Steamオーバーレイ、ゲーム固有のランチャー、Steam入力、対象ゲームの表示モードを確認してください。まず対象ゲームだけSteamオーバーレイを無効にし、ボーダーレスと排他的フルスクリーンを比較します。ほかのSteamゲームでは発生しない場合、Steamクライアント全体よりもゲーム固有の不具合や外部ランチャーを疑います。
ゲームパッドを使う時だけ最小化されます
XboxボタンやガイドボタンでXbox Game Bar、Steam、別のゲームランチャーが開いている可能性があります。ゲームパッドのショートカット設定と、Xbox Game Barをコントローラーから開く設定を確認してください。
クリーンブートで直った後はどうすればよいですか
無効にしたサービスとスタートアップアプリを半分ずつ有効にし、症状が再発するグループを絞ります。原因が分かったら、アプリの更新、設定変更、スタートアップ無効化、アンインストールのいずれかで対処します。確認後はWindowsを通常スタートアップへ戻してください。
まとめ

ゲームが勝手に最小化される場合は、バックグラウンドアプリが新しいウィンドウを開き、ゲームからフォーカスを奪っている可能性があります。最初にゲームをボーダーレスへ変更し、Windows 11の「応答不可」をゲーム中と全画面表示中に自動で有効化してください。続いてSteam、Discord、Xbox Game Bar、NVIDIA App、AMD Softwareなどのオーバーレイを一つずつ無効にします。

原因が分からない場合は、記事内のPowerShellスクリプトを起動したままゲームをプレイしてください。ゲームが最小化された直後のプロセス名、ウィンドウタイトル、実行ファイルの場所がfocus-history.csvへ記録されます。同じアプリが繰り返し記録される場合は、そのアプリのアップデート、通知、常に手前に表示、自動起動、ゲーム検出などを無効にします。

決まった時刻に発生するならタスクスケジューラ、Windowsへのサインイン後から発生するならスタートアップアプリを確認してください。それでも原因を特定できない場合は、Microsoft以外のサービスとスタートアップアプリを停止するクリーンブートで切り分けます。ゲームやWindowsを再インストールする前に、どのプロセスがフォーカスを取得したのかを記録し、原因となるアプリだけを修正することが重要です。

2026 BEST BUY — GPU 部門
MSI GeForce RTX 5070 16G VENTUS 2X OC
WQHD定番

RTX 5070 12GB

約105,850円前後

Amazon
ASRock RX 9070 XT スチールレジェンド 16GB GDDR6
コスパ最強

RX 9070 XT 16GB

約107,800円前後

Amazon
MSI GeForce RTX 5070 Ti 16G VENTUS 3X OC
ミドルハイ

RTX 5070 Ti 16GB

約169,980円前後

Amazon

※価格は2026年7月時点の目安・変動あり

Amazon PICK UP — ゲーマー必携アイテム
LG UltraGear 27GS95QE-B 27型 OLED 240Hz
OLED 27型

LG UltraGear 27GS95QE-B

約77,000円〜

Amazon
AIM1 瞬 ラピッドトリガー ゲーミングキーボード 日本語配列 75% 8000Hz MATATAKI
ラピトリ8000Hz

AIM1 瞬 ラピトリKB

約14,980円〜

Amazon
Scythe MUGEN6 BLACK EDITION 空冷CPUクーラー
空冷コスパ

Scythe MUGEN6 BLACK

約5,300円〜

Amazon
REALFORCE GX1 ラピッドトリガー 静電容量無接点 45g TKL 日本語配列
静電容量ラピトリ

REALFORCE GX1

約32,000円〜

Amazon
CORSAIR RM1000x 1000W ATX 3.1
RTX5080級

CORSAIR RM1000x

約22,500円〜

Amazon

※価格は2026年7月時点の目安・変動あり

Writer
管理人アバター

ゲーミングスタイル管理人

自作PC愛好家・ゲーム歴15年超

ゲーミングPC歴は15年以上。毎年パーツを更新しながら最新トレンドを追いかけています。初心者にもわかりやすく、上級者も満足できる情報発信を心がけています。