Windows のスタートアップ プログラムを管理する方法

短い答え: Windows は自動起動の項目を 2 つのレジストリ キー(Run と RunOnce、ユーザーごととシステム全体)と 2 つのスタートアップ フォルダーに保存しています。タスク マネージャーはほとんどをオフにできますが、コマンドと取得元は隠します。スタートアップマネージャーのような無料アプリなら、各項目をコマンド・場所・範囲付きで表示し、同じ StartupApproved の仕組みで切り替えます——何も削除しません。

Windows がスタートアップを隠す場所

自動起動は 1 つのリストではなく、4 つの場所です。

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run — 現在のユーザーのプログラム。サインインのたびに起動します。
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce — 1 回限りのタスク。実行後に削除されます。
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run と ...\RunOnce — すべてのユーザー向けの同じ場所。書き込みには管理者権限が必要です。
  • スタートアップ フォルダー:現在のユーザーは shell:startup、すべてのユーザーは shell:common startup。どちらも [ファイル名を指定して実行] から開けます。

タスク マネージャーはこれらの取得元を読み、「スタートアップ アプリ」タブにまとめます。Windows と一緒に起動するものは必ずこの 4 つのどれかにあります——「タスク マネージャーで無効にしたのに戻ってきた」は、たいてい別の場所にもう 1 つ項目があるという意味です。

方法 1:タスク マネージャー — 慣れた道

  1. Ctrl+Shift+Esc を押し、**「スタートアップ アプリ」**タブを開きます(Windows 11 では左側のメニューにあります)。
  2. 項目を右クリックして**「無効化」**を選ぶか、選択して右上のボタンを使います。
  3. サインアウトして再度サインイン(または再起動)すると効果がわかります。タブは現在の状態を示し、プログラムは再び有効にするまで起動しません。

便利で標準搭載、騒がしいプログラムには十分です。ただし、タスク マネージャーが表示するのは名前・発行元・影響度だけで、実際に実行されるコマンド、項目の背後にある正確なレジストリ キーやフォルダー、範囲はわかりません。RunOnce の項目はほとんど表示されないため、次のサインイン用にタスクを予約するインストーラーは見えないままです。タブには見慣れない項目が何なのかの説明もなく、当てずっぽうで無効にするしかありません。

方法 2:regedit と shell:startup — 勇気のある人向け

  1. Win+R を押して regedit と入力し、HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run に移動します。各値が 1 つのスタートアップ プログラムです。名前が見える部分、データがコマンドです。
  2. プログラムを削除するには値を削除します——ここにオン/オフの切り替えはありません。間違った値を削除するとドライバーのヘルパーや入力デバイスが壊れることがあり、レジストリのバックアップを復元する以外に元に戻す方法はありません。
  3. フォルダーの項目は、Win+R を押して shell:startup(または shell:common startup)と入力し、ショートカットを削除すると起動しなくなります。

これは手作業の道です。正確ですが、ミスは許されません。削除した Run の値は消え、コマンドの打ち間違いは静かに項目を壊し、4 つの場所のどこから来たのかもわかりません。頑固な項目の最後の手段としては妥当ですが、日常の道具ではありません。

方法 3:スタートアップマネージャー — すべて見えて、安全に切り替え

無料ダウンロード — StartupManager-Setup.exe

  1. アプリを開きます — 2 つのレジストリ キー(現在のユーザーとすべてのユーザー)と 2 つのスタートアップ フォルダーを読み、各項目を正確なコマンド、取得元(レジストリ · Run、レジストリ · RunOnce、スタートアップ フォルダー)、範囲(現在のユーザーまたはすべてのユーザー)付きで表示します。
  2. サインイン時に不要な項目のスイッチを切り替えます。 アプリはタスク マネージャーと同じ StartupApproved フラグを書き込みます。レジストリの値やショートカットはそのままの場所に残り、何も削除されず、変更はすぐに反映されます。
  3. 必要になったらスイッチを戻します — 無効にした項目がリストから消えることはないので、「どこへ行った?」となる瞬間はありません。

タスク マネージャーと違い、リストは各名前の背後にあるコマンドを表示し、すべてのユーザーの項目には鍵アイコンを付けます。透明性のために一覧表示されますが、このバージョンでは管理者権限が必要なため切り替えられません。ユーザーの項目は権限の昇格がまったく不要です。アプリはレジストリを読んでフラグを 1 つ書くだけなので、仕事用のノート PC でも安心して試せます。サービスもアカウントもテレメトリもなく、どこにも何も送信しません。

安全に無効化できるもの

  1. アップデーターとヘルパー — Spotify、Steam、Adobe Creative Cloud のヘルパー、OneDrive、Discord:サインイン時ではなく、アプリを開いたときに起動させられます。起動時間の大半はここで失われがちです。
  2. ゲームランチャー — Steam、Epic Games Launcher、Battle.net など:実際に遊ぶときだけ動けば十分です。無効にして、スタート メニューから開きましょう。
  3. メッセンジャーとチャット クライアント — Telegram、Slack、Teams:Windows が読み込まれた直後に必要なければオフに。手動で問題なく起動できます。

オーディオ ドライバー、タッチパッドやキーボードのヘルパー、ウイルス対策やセキュリティ エージェント、ファンや電源管理のベンダー ユーティリティには触れないでください。これらはデバイスが正しく動作するための Run 項目をインストールすることが多く、無効にすると音が出ない、タッチパッドが動かない、保護がなくなるといった事態になりかねません。項目のコマンドが Program Files\Windows Defender、オーディオ ドライバーのフォルダー、ノート PC メーカーのディレクトリを指しているなら、そのままにしておきましょう。

よくある質問

スタートアップ プログラムを無効にすると削除されますか?

いいえ。スイッチはタスク マネージャーと同じ StartupApproved フラグを書き込むだけです。レジストリの値やショートカットはそのまま残り、再度有効にすれば次のサインインでプログラムが復元されます。

タスク マネージャーで無効にしたのにプログラムが戻るのはなぜですか?

別の項目が起動しているからです。Run の 2 つ目の値、RunOnce のタスク、またはスタートアップ フォルダーのショートカットです。4 つの場所すべてを読むマネージャーなら重複を一度に表示できます——タスク マネージャーの 1 つのタブにはできないことです。

管理者権限は必要ですか?

すべてのユーザーに属する項目(HKEY_LOCAL_MACHINE のキーと共通スタートアップ フォルダー)だけです。HKEY_CURRENT_USER と shell:startup のユーザー項目は、サインイン中のユーザーが昇格なしで切り替えられます。


そのほか:Windows で PC のスペックを確認する方法と Windows で空のフォルダーを見つけて削除する方法。