Windows 11のスタートアップアプリが遅れて起動するときの対処|Serializeレジストリの設定手順と戻し方【2026年11月】
本記事にはアフィリエイト広告(Amazon・楽天市場等)のリンクが含まれています。
Serializeキーの2つの値を0にする手順と、戻し方
デスクトップは表示されたのに、スタートアップに入れたランチャーやチャットアプリがなかなか開かない。同じアプリを手で起動すれば一瞬で立ち上がるのに、自動起動に任せると1〜2分待たされる。この症状は、アプリが重いのではなく、Windowsが自動起動する順番と間隔を調整していることが原因のことがあります。
Runキーとスタートアップグループのプログラムは、ほかの動作と干渉しない時間まで起動を遅らせることがあり、いつ起動するかはMicrosoftも保証していません。この遅れは、レジストリのSerializeキーにStartupDelayInMSecとWaitForIdleStateを作り、どちらも0にすると短くなったという報告があります。約30本のアプリを自動起動する環境で、150秒が30秒になったという例です。
ただし、この数字は1台の環境の報告で、誰でも同じだけ縮むわけではありません。Microsoftの公式手順として載っている設定でもありません。サインイン後の1〜2分はWindowsの余裕を取る時間でもあるため、まず不要な自動起動を減らし、それでも遅いときだけ試す順番をおすすめします。戻し方は、新しく足した値を削除するだけです。元からあった値を変えた場合は、控えたデータへ戻します。
目次
原因この設定で直る遅さと、直らない遅さ
デスクトップが表示された直後に、遅いアプリを手で起動してみます。すぐ開くなら、アプリ本体ではなく自動起動のタイミングの遅れが疑われます。
Microsoft Learnには、Runキーとスタートアップグループのプログラムを、画面操作やほかのプログラムと干渉しにくい時間まで遅らせることがあるという趣旨の記述があります。ここで紹介する2つの値は、この遅らせ方を調整するものとして利用者の間で知られています。遅延が起きる条件や、2つの値の既定値までは公式資料に書かれていません。
準備レジストリを触る前に、自動起動を減らす
遅れの原因が自動起動の本数なら、数を減らすだけで短くなります。[スタート]→[設定]→[アプリ]→[スタートアップ]で、使わないアプリのスイッチをオフにします。タスクマネージャーの[スタートアップ アプリ]タブでも同じ一覧を操作できます。一覧に出ないアプリは、shell:startupをWin+Rで開いたフォルダーにショートカットがあるかを確かめます。
一覧に出てこない起動項目の見つけ方は起動項目の見つけ方で、逆に起動直後の負荷が高いのでアプリをサインインの後ろへずらしたい場合は遅延起動の設定手順で説明しています。今回の方法は、遅らせたい場合とは反対の、早く起動させたい場合の設定です。
手順Serializeキーに2つの値を作る
変更前に、今の状態を確認する
対象のキーはHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Serializeです。まずレジストリエディターでExplorerの下を開き、Serializeキーがあるかどうかを確かめます。Microsoft Q&Aの利用者は、キーや値は既定では無く、作る必要があると書いています。
キーがすでにあるPCでは、先にバックアップを取ります。レジストリエディターでSerializeを選び、[ファイル]→[エクスポート]で保存します。Microsoftの手順どおりの方法です。キーが無いPCでは、「元々無かった」ことを覚えておくだけで足ります。
レジストリエディターで作る
- Win+Rで
regeditと入力して開く HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorerまで進むExplorerを右クリックして[新規]→[キー]を選び、Serializeと名前を付ける(すでにあれば作らない)Serializeを選び、右側で右クリックして[新規]→[DWORD (32ビット) 値]を選ぶ- 名前を
StartupDelayInMSecにして、ダブルクリックし、値のデータを0にする - 同じ手順で
WaitForIdleStateも作り、値のデータを0にする - PCを再起動するか、いったんサインアウトしてサインインし直す
値の名前のつづりや余分な空白を間違えないでください。名前が違うと、効かないまま何も起きません。
コマンドで作る
手で作る代わりに、コマンドプロンプトで次の2行を実行しても同じ結果になります。管理者権限は不要で、現在のユーザーだけに反映されます。
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /v StartupDelayInMSec /t REG_DWORD /d 0 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /v WaitForIdleState /t REG_DWORD /d 0 /f
復元元に戻す方法
戻し方は、変更前にキーがあったかどうかで変わります。Serializeキーごと消す方法は、元からあった別の設定まで消す可能性があるため、一律にはおすすめしません。
| 変更前の状態 | 戻す操作 | 補足 |
|---|---|---|
| Serializeキーが無かった | 作った2つの値を削除し、中身が空になったSerializeキーも削除する | レジストリエディターで右クリックして[削除]。キーに他の値が残っていれば、キーは消さない |
| キーはあり、2つの値は無かった | 作った2つの値だけを削除する | キーと、元からあった他の値には触らない |
| 2つの値が元からあった | 変更前に控えた値のデータへ戻す。エクスポートしたファイルのインポートでも戻せる | 値を変える前に、元のデータをメモしておく |
変更前に存在しなかった値は、コマンドで次のように消せます。元からあった値には使わず、控えたデータへ戻してください。片方だけ元からあったときは、新しく作ったほうの1行だけを実行します。
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /v StartupDelayInMSec /f
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize" /v WaitForIdleState /f
新しく作った値を削除し、再起動かサインインし直すと、元の動作に戻ります。保存したエクスポートファイルを読み込む場合は、レジストリエディターの[ファイル]→[インポート]を使います。ただし、インポートは保存時にあった値を書き込むだけで、あとから足した値を消せるとは限りませんので、足した値は上の表のとおり自分で削除してください。
確認効いたかどうかの測り方
体感ではなく、前後で同じ条件の時間を測ります。サインインのパスワードを入力した瞬間から、遅れていた最後のアプリのウィンドウが出るまでを、スマートフォンのストップウォッチで計ります。設定前に3回、設定後に3回計り、再起動のたびに同じ手順で行います。
参考になる報告は、約30本のアプリと約6本のスクリプト、複数のサービスを自動起動している高性能PCの例です。Windows Performance Toolkitで見るとアプリごとに長い待ち時間があり、2つの値を0にして150秒が30秒になったといいます。これは1台の環境の値で、平均でも上限でもありません。自動起動が数本のPCでは、差が出ないこともあります。
| 測る項目 | やり方 | 見るポイント |
|---|---|---|
| 最後のアプリが出るまで | サインインから、ストップウォッチで3回 | 3回の幅が大きいときは、平均ではなく範囲で比べる |
| 手で起動したときの時間 | デスクトップ表示直後に、遅いアプリを手で起動 | 手動でも遅いなら別の原因も重なっている可能性があり、この設定だけでは改善しないことがある |
| 設定後の安定性 | 同期・ログイン・通信が必要なアプリを確認 | ネットワーク接続の前に起動して失敗しないか |
注意試す前に知っておきたい副作用
この設定は、Windows自体の起動を速くするものでも、アプリの動作を軽くするものでもありません。変わるのは、自動起動のアプリが始まるまでの待ち時間だけです。サインイン画面までの時間を縮めたいときは、別の原因を調べる必要があります。
FAQよくある質問
WaitForIdleStateを足したら解決し、StartupDelayInMSecだけでは少ししか効かなかったという投稿があります。公式の仕様ではないため、片方だけで十分かは環境で変わります。まとめまとめ|手動なら即起動するときだけ、2つの値で試す
自動起動のアプリだけが1〜2分遅れるなら、Windowsが起動を遅らせている可能性があります。先に不要な自動起動を整理し、それでも遅いときに、SerializeキーのStartupDelayInMSecとWaitForIdleStateを0にします。効果は環境で変わるので、設定前後を同じ条件で測り、通信が必要なアプリが正常に起動するかも確かめてください。
手動なら即起動するときが対象。変更は2つのDWORD値を0にするだけ。キーがあったかを控え、戻すときは足した値だけ削除する。150秒が30秒という例は1台の報告で、保証ではない。
情報ソース:Microsoft Learn「Run and RunOnce Registry Keys」/Microsoft サポート「Configure Startup applications in Windows」/Microsoft サポート「How to back up and restore the registry in Windows」/Microsoft Q&A「Startup apps artificially delayed on Windows 11」/「Windows 11 Startup Apps Taking Forever To Load? A Simple Registry Tweak Cut One User’s Wait By 80%」。
