はじめに
記事①では、スタートアップフォルダとタスクマネージャーという「表に見える入口」を確認しました。
しかし現実には、
- どこにも登録されていないように見えるのに起動する
- 無効にしたはずなのに復活する
そんな挙動に出会います。
この記事②では、Autorunsを使う前段階として、
Windowsが持つ代表的な「隠れた自動起動ルート」を、構造として解説します。
ここを理解すると、
なぜAutorunsが必要なのか
が腑に落ちます。
Windowsは一か所だけを見て起動していない
まず大前提です。
Windowsは、起動時に一つの場所だけを見ているわけではありません。
理由は単純で、
- 歴史が長い
- 後方互換を重視する
- 用途が多すぎる
結果として、自動起動ルートが積み重なった構造になっています。
ルート① レジストリ Run / RunOnce
代表的な場所
HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\RunHKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Run
ここに登録されたものは、
ログイン時に自動実行されます。
特徴
- タスクマネージャーに表示されることもある
- 表示されないケースもある
- アンインストール失敗の残骸が多い
「スタートアップに無いのに起動する」原因の定番です。
ルート② タスクスケジューラ
よくあるパターン
- ログオン時
- 起動後◯分
- 特定条件成立時
なぜ厄介か
- 時間差で起動する
- スタートアップ感が無い
結果として、
起動直後は静か → しばらくして何か始まる
という挙動になります。
ルート③ サービス
特徴
- ログイン前に起動
- ユーザーと無関係
ウイルス対策やドライバ系が代表例です。
不用意に止めると、
- 起動不能
- 不安定
につながります。
ルート④ Explorer 拡張・シェル連動
- コンテキストメニュー拡張
- 常駐型シェル拡張
Explorer起動と同時に読み込まれるため、
「アプリを起動した覚えがないのに動いている」状態になります。
なぜタスクマネージャーに出ないのか
タスクマネージャーの「スタートアップ」は、
すべての起動ルートを対象にしていません。
- ユーザー向け
- 危険度の低いもの
に限定されています。
そのため、
出ない = 無い
ではありません。
ここまでの整理
この記事②の段階で、理解すべきことは次の3点です。
- 自動起動ルートは複数存在する
- 見えないからといって存在しないわけではない
- 手作業で全部追うのは非現実的
ここで初めて、
Autorunsというツールの必然性が見えてきます。
次の記事とのつながり
次回の記事③では、
ここで紹介したすべてのルートを一画面で可視化する
Autoruns for Windowsを扱います。
仕組みを知った上で使うAutorunsは、
単なる危険ツールではなく、
構造理解のための地図になります。
コメント