Windowsの回復画面に「ファイル: \Windows\System32\winload.efi」と表示されて起動できない場合でも、winload.efiそのものが壊れているとは限りません。UEFI環境では、winload.efiはWindowsを読み込む「Windows OS Loader」にあたり、その前段にある起動構成やシステムパーティションの不具合でも同じ画面が表示されます。
最初に画面のエラーコードを控え、Windows回復環境(WinRE)から「スタートアップ修復」を試してください。直らないときは、WinRE上でWindowsが入っているドライブを確認してから、BCDBootやオフラインSFCへ進みます。通常起動時と同じ感覚で「WindowsはC:にある」と決めつけないことが重要です。
目次
winload.efiエラーが出たら、最初に見るポイント
今どの状態かによって、最初に試す方法が変わります。
| 現在の状態 | 最初に試すこと | その後の判断 |
|---|---|---|
| F1などからWindows回復環境に入れる | スタートアップ修復を実行 | 直らなければ直前の更新や復元ポイントを確認 |
| Windows Update直後から起動しない | 更新プログラムのアンインストール、またはシステムの復元 | 直らなければ起動構成を確認 |
| Windows回復環境に入れない | Windowsインストールメディアから「PCの修復」を選ぶ | WinREに入れたらスタートアップ修復へ |
| Windowsの入ったドライブが見えない・認識が不安定 | BCDBootやSFCを続けない | ストレージ側の診断やデータ保護を優先 |
BitLockerを有効にしているPCでは、WinREの一部機能を使う際に回復キーを求められることがあります。キーを確認できないまま、暗号化されたドライブに対する操作を進めるのは避けてください。
Microsoftの「スタートアップ修復」でも、Windowsが起動しない場合にWinREから起動構成やシステムファイルの問題を診断する流れが案内されています。
winload.efiとは?Windows Boot Managerとの違い
UEFIでWindowsが起動するときは、大きく分けると次の順番で処理が進みます。
UEFIファームウェア → Windows Boot Manager(bootmgfw.efi)→ Windows OS Loader(winload.efi)→ Windowsカーネル
MicrosoftのWindows起動プロセスでも、bootmgfw.efiはWindows Boot Manager、winload.efiはその次のWindows OS Loaderとして区別されています。
つまり、回復画面にwinload.efiと出ていても、原因がそのファイル1つにあるとは限りません。BCD(ブート構成データ)が誤ったWindowsを参照している、システムパーティションの起動ファイルに問題がある、といったケースでも起動処理は止まります。
なお、画面に出ているのがwinload.efiではなくbootmgfw.efiやWindows Boot Managerそのものなら、問題の段階が異なります。その場合は、Windows Boot Managerが起動しない場合の対処を確認してください。
そのため、第三者サイトからwinload.efiをダウンロードして置き換える方法は避けてください。先にWindows標準の回復機能で、どの段階に問題があるかを切り分けます。
winload.efiエラーが起きる主な原因
BCDや起動構成が実際のWindowsと合っていない
BCDには、Windows Boot ManagerがどのWindowsを起動するかといった情報が保存されています。参照先と実際のWindowsパーティションがずれると、winload.efiまで正しく処理を渡せません。
システムパーティションの起動ファイルに問題がある
UEFI環境では、Windows Boot Managerなどの起動ファイルがシステムパーティションにあります。この部分が破損している場合は、Windowsパーティションを確認したうえでBCDBootを使って起動環境を修復する方法があります。
Windowsのシステムファイルが破損している
winload.efiを含む保護されたシステムファイルに問題がある場合は、SFC(システムファイルチェッカー)の対象になります。Windowsが起動しない状態では、WinREからオフライン修復として実行します。
更新や設定変更の直後に不具合が出た
Windows Updateやドライバー、システム設定を変更した直後なら、起動構成を手動で触る前に、更新プログラムのアンインストールやシステムの復元を試す方が近道になることがあります。
Windowsの入ったドライブを正しく認識できていない
WinREでWindowsのボリューム自体が見つからない場合は、起動ファイルだけの問題ではありません。ドライブの認識が不安定な状態でBCDBootやSFCを繰り返すより、ストレージ側の状態を先に確認します。
winload.efiエラーを安全な順に修復する方法
1. WinREの「スタートアップ修復」を試す
スタートアップ修復は、Windowsの起動を妨げるシステムファイルやBCDなどを自動で診断・修復するWindows標準機能です。手動コマンドより先に試します。
- Windows回復環境(WinRE)を開きます。
- 「トラブルシューティング」→「詳細オプション」→「スタートアップ修復」を選びます。
- 画面の案内に従い、処理後にWindowsが起動するか確認します。
自動的にWinREへ入れない場合は、別のPCでWindowsインストールメディアを作成し、セットアップ画面で「PCの修復」を選ぶとWinREへ進めます。Microsoftの「Windows 回復環境」にも、この入り方が案内されています。
ここで起動できたなら、BCDBootやSFCを追加で実行する必要はありません。スタートアップ修復で直らなかった場合だけ、次の確認へ進みます。
2. 更新直後なら、変更前の状態へ戻せるか確認する
Windows Updateの直後からwinload.efiエラーが出るようになった場合は、WinREの「詳細オプション」から「更新プログラムのアンインストール」を検討します。
復元ポイントが残っていれば「システムの復元」も候補です。Microsoftのシステムの復元では、WinREから「トラブルシューティング」→「詳細オプション」→「システムの復元」と進む手順が案内されています。
直前の更新や設定変更に心当たりがない場合は、この方法に時間をかけず、Windowsの実際のドライブ位置を確認します。
3. 修復コマンドの前に、Windowsが入っているドライブを確認する
WinREでは、通常起動時のドライブ文字と同じになるとは限りません。ここを誤ると、別のパーティションを対象にしてしまうため、C:を前提にコマンドを入力しないでください。
「コマンド プロンプト」を開き、次を実行します。
bcdedit
「Windows Boot Loader」内のosdeviceを確認します。たとえばpartition=D:なら、その環境ではWindowsのシステムボリュームがD:として認識されています。
ボリューム一覧も確認しておくと判断しやすくなります。
diskpart
list volume
exit
容量やラベルを見てもWindowsの場所を特定できない場合は、ドライブ文字を推測して先へ進まないでください。複数のWindows、複数ディスク、複数のEFIシステムパーティションがあるPCも、手動修復は慎重に行う必要があります。
4. Windowsの場所を確認できたらBCDBootで起動環境を修復する
BCDBootは、Windowsパーティションにあるファイルを使ってシステムパーティションの起動環境を構成・修復するMicrosoftのツールです。MicrosoftのBCDBootの説明でも、破損したシステムパーティションの起動ファイルを再作成する用途が案内されています。
たとえば、前の手順でWindowsがD:にあると確認できた場合は、次のように実行します。
bcdboot D:\Windows
D:はあくまで例です。実際には、自分のPCで確認したWindowsのドライブ文字に置き換えます。エラーなく完了したら再起動し、Windowsが起動するか確認してください。
この手順では、EFIシステムパーティションのフォーマットやBCDファイルの手動削除までは行いません。どのシステムパーティションを使うべきか判断できない構成では、手動操作を増やさずサポートへ切り替える方が安全です。
5. 起動できなければ、オフラインSFCでシステムファイルを確認する
BCDBoot後も同じエラーが続き、Windowsのボリュームが安定して認識されているなら、SFCで保護されたシステムファイルを確認します。
たとえばosdeviceがD:の場合、MicrosoftのSFCコマンドが示すオフライン修復の構文に沿うと、次のように実行できます。
sfc /scannow /offbootdir=D:\ /offwindir=D:\Windows
ここでもD:は例です。確認したWindowsボリュームに合わせてください。SFCが修復を完了したら再起動します。
修復できないファイルが残る、対象のWindowsを認識できないと表示される、といった場合は同じコマンドを繰り返さず、Windowsの場所やストレージ状態をもう一度見直します。
6. Windowsのボリュームが見えないなら、起動修復を止める
diskpartのlist volumeにWindowsの入ったボリュームが出ない、UEFIでもシステムドライブを安定して認識できない場合は、BCDBootやSFCで直す段階ではありません。
重要なデータがあるなら、初期化や書き込みを伴う操作を増やさず、PCメーカーや修理・データ復旧の専門窓口でストレージの状態を確認してください。ドライブが見えない状態と、起動構成だけが壊れている状態を同じ方法で扱わないことが大切です。
winload.efiと一緒に表示されるエラーコード別の確認先
winload.efiの回復画面では、ファイルパスと一緒にエラーコードが表示されることがあります。コードが分かっている場合は、より具体的な確認へ進めます。
| エラーコード | このページで先に確認すること | 詳しい対処 |
|---|---|---|
0xc000000f |
WinRE、スタートアップ修復、Windowsボリューム | 0xc000000fの原因と修復方法 |
0xc0000225 |
Windowsの場所と起動構成 | 0xc0000225で起動できない場合の対処 |
0xc00000e |
起動構成とストレージ認識 | 0xc00000eの解決方法 |
ここではwinload.efiという共通の状態を中心に扱い、各エラーコード固有の手順は重複させません。画面にコードが表示されているなら、該当するページで続きを確認してください。
初期化・再インストールの前に必要なデータを取り出したい場合
ここまでの修復でもWindowsが起動せず、「このPCを初期状態に戻す」や再インストールを検討する場合は、先に必要なファイルを確保できるか確認してください。Microsoftも、リセットや再インストールなどの回復操作ではデータが失われる場合があるため、事前のバックアップを案内しています。
Windowsを通常起動できずファイルをコピーできない場合は、起動用USBからデータへアクセスする方法もあります。Recoveritには、別の動作するPCで起動用USBを用意し、起動しないPCからファイルを復元する機能があります。初期化前にファイルを取り出したい場合は、起動しないパソコンからデータを復元する方法で対象となる状況を確認できます。
ただし、Windowsの入ったドライブ自体がUEFIやWinREでも安定して認識されない場合は、ソフトウェアでの読み取りを優先しないでください。重要なデータがあるなら、ストレージの状態を確認できる専門窓口を検討します。
まだ起動しないときの判断基準
- スタートアップ修復で起動できた:そこで修復は終了です。起動後に重要なファイルをバックアップしておきましょう。
- Windows Update直後から発生した:更新プログラムのアンインストールやシステムの復元を優先します。
- Windowsボリュームを確認でき、安定して認識されている:BCDBootを試し、必要ならオフラインSFCへ進みます。
- Windowsボリュームが見えない・認識が不安定:起動ファイルの修復を止め、ストレージ側を診断します。
- 初期化や再インストールが必要で、未退避のデータがある:データを保護してから次の回復操作へ進みます。
よくある質問
FAQ:winload.efiエラーに関するよくある質問
-
Q1. Windows 10でもwinload.efiエラーの修復手順は同じですか?
A. 基本的な切り分け方はWindows 10でも共通です。WinREのスタートアップ修復から始め、必要に応じてWindowsボリューム、BCDBoot、オフラインSFCを確認します。ただし、Windows 10の通常サポートは2025年10月14日に終了しているため、修復後も使い続ける場合はWindows 11へ移行できるかも確認してください。 -
Q2. winload.efiをネットからダウンロードして置き換えてもよいですか?
A. おすすめしません。winload.efiと表示されても、原因がBCDやシステムパーティション、別のシステムファイルにあることがあります。第三者サイトからシステムファイルを入手するのではなく、スタートアップ修復、BCDBoot、SFCなどWindows標準の手段で修復する方が安全です。 -
Q3. スタートアップ修復で直らなければ、すぐ再インストールした方がよいですか?
A. すぐに再インストールする必要はありません。直前の更新を戻せるか、Windowsボリュームを正しく認識できているか、起動構成やシステムファイルを修復できるかを先に確認します。再インストールへ進むときは、必要なファイルを退避できているかも確認してください。