
はじめに
Windowsを使っていると突然「エラーコード 0xc0000020」が表示されて驚いてしまう方も多いと思います。
特にアプリ起動時やWindows Update時にこのエラーが出るケースが多く、戸惑うユーザーが増えています。
この記事では、
「そもそも0xc0000020とは何か?」
「原因は何か?」
「どのように直せるのか?」
を初心者にもわかりやすく、手順付きで解説していきます。
0xc0000020 エラーとは?
エラーコード 0xC0000020 は、Windows内部でプログラム実行用にファイルを読み込む際に「実行に不適切なファイル構造」と判定されたときに発生するエラーです。
・破損・途中中断で壊れた実行ファイル/更新ファイル
・依存 DLL の不一致(x64 アプリに x86 DLL/ARM64 混在 等)
・署名や整合性の不整合
などが主因です。
【出やすい場面】
アプリ起動・Windows Update・ドライバー更新など。
主な原因は何?
主な原因を、わかりやすく表にまとめてみました。
| 原因 | 説明 |
|---|---|
| システムファイル破損 | 重要なWindowsシステムファイルが破損している |
| アプリケーションファイル破損 | 特定のアプリが必要とするDLLや実行ファイルが壊れている |
| 古いドライバーの互換性不良 | ドライバーが古く、OSと互換性エラーを起こす |
| Windows Update不具合 | アップデート時にファイル整合性が崩れてエラー発生 |
| ウイルス・マルウェア感染 | 悪意あるプログラムがシステムに干渉 |
みていただくとわかるように、これらの原因は、複数が重なって発生することも少なくありません。たとえば「システムファイル破損」と「古いドライバーの互換性不良」が同時に起きているケースもあります。そのため、原因を1つに特定するのは難しい場合もありますが、順番に対処法を試していくことで解消できるケースがほとんどです。
解決策:順番に試していこう
対策① システムファイルの整合性チェック
最も基本的で安全な方法です。
1. 管理者権限でコマンドプロンプトを開く
• スタートメニュー右クリック → 「ターミナル(管理者)」を選択
2. 以下のコマンドを順番に実行します。
- 修復が完了するまで待機(10分前後かかります)
→ これで破損したシステムファイルが自動修復されます。
対策② DISMコマンドでより深く修復
SFCで直らない場合は、DISMを使います。
- 管理者権限のコマンドプロンプトを開く
- 以下を入力し実行します
- 処理が終わるまで待ちます(10〜20分かかることも)
このコマンドはWindowsの更新ソースから破損したイメージを修復します。
対策③ 依存ランタイムとビット数を確認(×86/×64/ARM)
- Visual C++ 再頒布可能パッケージ(x64 と x86 の両方)を最新版で入れ直す
- .NET Framework 修復(Windows の「機能の有効化または無効化」から .NET を有効/再有効化)
- アプリとDLLのビット数が一致しているか(x64 アプリに x86 DLL を混ぜない/ARM64 環境の混在に注意)
これらの不整合は 0xC0000020 の典型的原因です。入れ直し後は再起動して再テストを。
(以降の番号は一つ繰り下がります:元の「対策③ アプリ再インストール」は対策④へ…)
対策④ ドライバー更新
古いドライバーが原因になる場合もあります。
- デバイスマネージャーを開く
- 該当ハードウェアのドライバーを右クリック → 「ドライバーの更新」
可能なら公式サイトから最新ドライバーを入手して更新する方が確実です。
【スポンサーリンク】
古いプリンタやオーディオ機器のドライバー不具合でエラーが出ることもあります。
この機会に、ソフマップのPC周辺機器で互換性の高い製品に買い替えるのもおすすめです。
対策⑤ Windows Updateの修復
- 設定 → Windows Update → 更新プログラムの確認
- 保留中の更新があればインストール
- 失敗が続く場合は「トラブルシューティング」→「Windows Update修復」を試す
それでも失敗する場合は、管理者の PowerShell で以下を1行ずつ実行 → 再起動 → Update 再試行。
net stop wuauserv
net stop bits
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start bits
net start wuauserv
※これは「削除」ではなくリネームなので安全寄りの方法です。
対策⑥ ウイルス・マルウェアチェック
念のため、以下を実行してください。
Windows Defenderのフルスキャン
【Windows Defenderでフルスキャンを実行する方法】
1. スタートメニューを開く
2. 「Windows セキュリティ」と検索して開く
3. 「ウイルスと脅威の防止」をクリック
4. 「スキャンのオプション」を選択
5. 「フルスキャン」にチェックを入れて「今すぐスキャン」をクリック
※ フルスキャンはPCの状態によっては1時間以上かかることもあります。電源をつないで実行するのがおすすめです。
また、可能なら「Windows セキュリティ → スキャンのオプション → Microsoft Defender オフライン スキャン」も有効です。
別のセキュリティソフトで確認
Windows Defenderだけでは見つけにくいマルウェアが潜んでいる可能性もあります。念のため、「Malwarebytes」 などの評判の良いサードパーティ製の無料スキャナをインストールして追加チェックを行うのも有効です。これにより、スパイウェア・アドウェア・ルートキットなど隠れた脅威も発見しやすくなります。スキャン後は、必要に応じて削除や隔離の指示に従いましょう。
【スポンサーリンク】
ウイルスやマルウェアの影響が気になる方は、信頼性の高いセキュリティソフトの導入もご検討ください。
最新の脅威にも対応し、PC環境をより安全に保てます。
補足:なぜこのエラーは起きるのか?
0xc0000020 は「イメージが不正」と言われますが、
ここでの「イメージ」とは「実行するプログラムの内部構造や依存DLL」のことです。
✔ DLLの不整合
✔ 古いAPIの呼び出し
✔ 64bitアプリに32bit用DLLが混入
などでも発生します。
番外編:上書きインストールで修復する方法
どうしても改善しないけれど、できれば初期化せずに直したい…という場合は「修復インストール(In-place Upgrade)」が有効です。
- Microsoftの公式メディア作成ツールを使い、最新版のインストーラーを入手
- 起動後に「このPCを今すぐアップグレード」を選択
- データとアプリを保持したまま、Windowsの内部構造を再構築します
※ クリーンインストールより時間がかかりますが、設定やアプリがそのまま残るため安全な修復手段として知られています。
最終手段:クリーンインストール
ここまでやっても改善しない場合は、Windowsのクリーンインストールを検討します。
- バックアップを取る
- 最新インストールメディアでインストール
※ 詳しいクリーンインストール手順はこちらの記事を参照ください。
▶︎Windowsを完全リセット!失敗しない「クリーンインストール」のやり方
エラーが発生しやすい場面と事前の予防策
エラーが出やすい主なケース
この0xc0000020は、特に以下のような状況で出やすくなります。
- 新しいアプリをインストール直後に起動したとき
→ そのアプリが必要とするランタイム(Visual C++ランタイムなど)が不足しているケースがあります。 - Windowsの大型更新(Feature Update)直後
→ 更新中にシステムファイルの入れ替えが発生し、一部のファイルが正常に置き換わらず整合性が崩れることがあります。 - 古い周辺機器ドライバーのまま放置しているとき
→ 特にプリンタやスキャナ、古いオーディオデバイスが影響を与えることがあります。 - サードパーティ製のセキュリティソフトを複数併用している場合
→ ファイルアクセス競合が発生し、正常なDLLの読み込みを妨げることがあります。
Visual C++ランタイムの再インストール
多くのアプリは「Visual C++ 再頒布可能パッケージ」に依存しています。破損または不足しているとエラーが出ることがあります。
- Microsoft公式サイト(最新版ダウンロードページ)から最新版をダウンロード
- 64bit環境では「x64」と「x86」の両方をインストール推奨
インストール後、PCを再起動してアプリや更新を再試行してください。
事前にできる予防策
日常的に以下を実施しておくと、0xc0000020の発生リスクを下げることができます。
- Windows Updateをこまめに実施する
OSの修正パッチで互換性問題が随時改善されています。 - 定期的にSFCとDISMのメンテナンス実行
月に1回でも整合性チェックを実施しておくと、軽微な破損のうちに修復できます。 - アプリやドライバーは公式サイトから入手する
非公式な配布サイトでは破損ファイルが含まれる可能性があります。 - 不要な常駐アプリは減らす
常駐アプリが多いと、起動時のリソース競合が起こりやすくなります。 - 重要なファイルは定期バックアップ
万が一、再インストールが必要になったときも安心です。
補足:イベントログで原因を特定する
「何度も対策を試したけど直らない…」という方は、Windowsのイベントビューアでエラー発生時の詳細ログを確認することができます。
- Windowsキー + R を押し、「eventvwr」と入力 → 【Enter】
- 左側の「Windowsログ」→「アプリケーション」または「システム」を開く
- 「エラー」や「警告」マークを探して、発生時刻やソースを確認
「障害のあるアプリ名」「DLL名」「エラーの説明」などが記録されていれば、原因の特定に役立つことがあります。
まとめ
| 対策 | おすすめ度 | 難易度 |
|---|---|---|
| SFCコマンド | ★★★ | 易しい |
| DISMコマンド | ★★★ | 普通 |
| アプリ再インストール | ★★ | 易しい |
| ドライバー更新 | ★★★ | 普通 |
| Windows Update修復 | ★★★ | 易しい |
| ウイルススキャン | ★★★ | 易しい |
| クリーンインストール | ★ | やや難しい |
どの対策も難しく感じるかもしれませんが、上から順番に一つずつ試すことで、ほとんどのケースで解決できます。特にSFCとDISMは初心者にも安全でおすすめです。焦らず丁寧に進めましょう。
【おすすめ記事】
▶︎WindowsアップデートでPC起動不能のときにできる対処法
▶︎【公式裏ワザ】再インストール不要“インプレースアップグレード”という選択

