Windows: サポートされないディレクトリのエラーを修正

重要: レジストリを編集する前に必ずバックアップを取り、システム復元ポイントを作成してください。操作ミスはシステムの起動不能を招くことがあります。
問題の概要
インストール中に表示される「Windows がサポートされていないディレクトリにインストールされている可能性があります」というエラーは、インストーラーが期待するシステムフォルダー(例: C:\Users、C:\Program Files、ProgramFilesDir レジストリ値)を探せない、または存在しない/別の場所に移動されているときに発生します。別の原因としては次のようなものがあります。
- Users フォルダーをデフォルト以外の場所に移動している。
- Program Files のパス(ProgramFilesDir)がレジストリで不正になっている。
- レジストリ設定が誤っているか破損している。
- サードパーティ製アンチウイルスがインストール処理をブロックしている。
- 使用している ISO イメージが破損している、または公式ではない配布物である。
- Windows Update 関連のサービスが停止または無効化されている。
次節では上記を順に診断・修正する手順を解説します。
診断の考え方(メンタルモデル)
- 「インストーラーは場所を見つけられない」:パスやレジストリを確認する。
- 「更新やサービス依存」:Windows Update や関連サービスを点検する。
- 「外的干渉」:アンチウイルスやサードパーティソフトを一時無効化する。
- 「媒体の問題」:ISO の正当性を確認し、公式から再取得する。
この順序で進めると、最も安全で影響が小さい手順から対処できます。
1. Windows Update トラブルシューティングツールを実行する
Windows の組み込みトラブルシューターは、更新やインストールに関連する問題を自動で検出・修正します。手順:
- スタートメニューを開きます(Win キー)。
- 検索バーに「トラブルシューティング設定」と入力して Enter を押します。
- 「その他のトラブルシューティング」を選択します。
- 「Windows Update」の項目を見つけ、「実行」ボタンを押します。
- スキャンが完了すると結果が表示され、検出された問題がある場合は「この修正を適用」などの案内が出ます。表示された指示に従ってください。
追加: システムの整合性検査ツール(System File Checker)も有効です。管理者権限のコマンドプロンプトを開き、以下を実行します:
sfc /scannow
破損ファイルが検出された場合、SFC が修復を試みます。修復できない場合は次に DISM コマンドを試します:
DISM /Online /Cleanup-Image /RestoreHealth
2. Users フォルダーの位置を元に戻す
Windows はインストール時に既存のユーザーフォルダーを参照してバックアップやマイグレーションの処理を行います。Users を別ドライブや別フォルダーへ移動しているとインストーラが混乱することがあります。
手順:
- ファイルエクスプローラーを開き、Users フォルダーを現在配置している場所へ移動します。
- 該当の Users フォルダーを右クリックして「切り取り」を選択します。
- OS ドライブのルート(例: C:\)を開き、Ctrl + V で貼り付けます。
貼り付け後、再度インストールを試みてください。
注意: ユーザープロファイルの移動が複雑な場合や権限の問題が発生する場合は、管理者権限で作業を行うか、IT 管理者に相談してください。
3. レジストリを編集して ProgramFilesDir を確認・修正する
インストーラーは Program Files のパス(ProgramFilesDir)をレジストリから読み取ります。ProgramFilesDir が不正な値を指しているとインストールに失敗します。
重要: レジストリ編集前にエクスポートでバックアップを作成してください。
手順:
- Win + R を押して「ファイル名を指定して実行」を開きます。
- regedit と入力して Enter を押し、レジストリエディタを開きます。
- アドレスバーに次のパスを貼り付けて Enter を押します:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
- 右ペインで ProgramFilesDir を探し、ダブルクリックします。
- 値データを OS ドライブ直下の既定値に変更します(例: C:\Program Files)。
- OK を押してレジストリエディタを閉じ、システムを再起動します。
レジストリが複数の ProgramFiles 関連キー(ProgramFilesDir、ProgramFilesDir (x86) など)を持つことがあるため、それらも確認してください。
4. Windows Update 関連サービスの起動種類を自動に設定する
インストールや更新は複数のサービスに依存します。これらが無効化されているとエラーが発生することがあります。対象サービスを自動に設定します。
手順:
- Win + R を押し、services.msc と入力して Enter を押します。
- 「Windows Update」を探してダブルクリックします。
- 「スタートアップの種類」を「自動」に変更し、適用→OK を押します。
同様に次のサービスも自動に設定し、必要なら再起動してください:
- Background Intelligent Transfer Service
- Cryptographic Services
- TrustedInstaller
5. 一時的にアンチウイルスを無効化する
サードパーティのアンチウイルスはインストーラをブロックしたり、ファイルアクセスを妨げることがあります。インストール作業中だけ一時無効化して問題が解消するか確認してください。
- システムトレイのアンチウイルスアイコンを右クリックして「一時無効化」や「保護を停止」オプションを選ぶ(ソフトにより手順は異なります)。
- Microsoft Defender を使っている場合は、Windows セキュリティの設定から一時的にリアルタイム保護をオフにできます(再インストール後は必ず有効化してください)。
重要: オンラインで未知の ISO を用いる場合は、無効化後の作業はリスクを伴います。信頼できるメディアのみを使用してください。
6. Microsoft 公式サイトから ISO を再取得する
サードパーティ配布の ISO は破損や改変の可能性があります。公式の Microsoft サイトから正規のメディア作成ツールや ISO をダウンロードし、もう一度インストールを試してください。
公式メディアを使用することで、署名されていないコンポーネントや改変されたインストーラによる問題を回避できます。
7. Windows Update コンポーネントをリセットする
Windows Update のコンポーネントに破損がある場合、リセットで多くの問題が解決します。管理者権限のコマンドプロンプトで以下を順に実行してください。
まずサービスを停止します:
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
次にフォルダ名を変更して更新キャッシュをリセットします:
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 Catroot2.old
最後にサービスを再起動します:
net start wuauserv
net start cryptSvc
net start bits
net start msiserver
完了したらシステムを再起動し、再度インストールを試してください。
代替アプローチ
- クリーンインストール: 既存のデータをバックアップしたうえで、OS ドライブをフォーマットしてインストールを行う(最終手段)。
- インプレースアップグレード: インストールメディアから「この PC を今すぐアップグレード」を選択し、既存のアプリと設定を維持しつつ上書きインストールを試す。
- 別の PC または仮想環境でメディアの整合性を確認する。問題が再現されるかを切り分ける。
- DISM を使ったイメージ修復: DISM /RestoreHealth を実行してイメージの整合性を修復する。
いつ本手順で解決しないか(ケースの切り分け)
- ハードウェア故障(ディスクの不良やコントローラの問題)がある場合。
- ISO が壊れており、別 PC でも同じエラーが再現される場合。
- 大幅に改変されたレジストリやシステム権限の破壊があり、手動修復では復旧できない場合。
その場合はハードウェア診断、ディスクの完全スキャン(例: chkdsk /f /r)、またはプロのサポートを検討してください。
チェックリスト:役割別
一般ユーザー向け
- 重要データのバックアップを作成する。
- トラブルシューティングツールを実行する。
- アンチウイルスを一時無効化して再試行する。
- 公式 ISO を使って再度インストールを試す。
IT 管理者向け
- ProgramFilesDir と Users パスの整合性を確認する(レジストリ)。
- Update サービスの起動種類を確認し、自動に設定する。
- SoftwareDistribution と catroot2 のリセットを行う。
- グループポリシーやドメインによるリダイレクト(フォルダーリダイレクト)をチェックする。
テストケースと受け入れ基準
- テストケース1: Users フォルダーを元の場所に戻した後、インストーラが先に進む。
- テストケース2: ProgramFilesDir を修正した後、インストールが正常完了する。
- テストケース3: Windows Update のサービスを自動起動に設定し、インストールが成功する。
受け入れ基準:1〜3 のいずれかの操作後にインストールが完了し、Windows が正常に起動すること。
簡易 SOP(手順書)
- 重要データをバックアップ。
- トラブルシューティングツールと SFC/DISM を実行。
- Users と Program Files の場所を確認・必要なら復元。
- レジストリ(ProgramFilesDir)を確認・修正(バックアップ必須)。
- Update 関連サービスを自動に設定。
- アンチウイルスを一時的に無効化して再試行。
- 公式 ISO で再試行。
- 必要なら Update コンポーネントをリセット。
- 最終手段としてクリーンインストール。
簡易フローチャート(診断フロー)
flowchart TD
A[インストールでエラー発生] --> B{Users/Program Files を移動しているか}
B -- はい --> C[元の場所に戻して再試行]
B -- いいえ --> D{レジストリ ProgramFilesDir が正しいか}
D -- はい --> E{Windows Update サービスは自動か}
D -- いいえ --> F[レジストリを修正して再起動]
E -- いいえ --> G[サービスを自動にして再試行]
E -- はい --> H{ISO は公式か}
H -- いいえ --> I[公式 ISO をダウンロードして再試行]
H -- はい --> J[アンチウイルスを一時無効化し再試行]
J --> K{解決したか}
K -- はい --> L[完了]
K -- いいえ --> M[Update コンポーネントをリセット]
M --> N{解決しない場合}
N -- はい --> O[クリーンインストールまたはサポートに連絡]
用語集(1行)
- ProgramFilesDir: レジストリで Program Files の既定パスを示す値。
- SoftwareDistribution: Windows Update のダウンロード/キャッシュ用フォルダ。
- catroot2: Windows Update の暗号関連キャッシュフォルダ。
よくある質問
Q: レジストリ編集が怖いのですが、代わりにできる安全な方法はありますか?
A: まずはトラブルシューティングツール、SFC、DISM、Update コンポーネントのリセットを試してください。これらは多くのケースでレジストリを触らずに問題を解決します。
Q: 公式 ISO をどこで入手できますか?
A: Microsoft の公式ダウンロードページやメディア作成ツール(Media Creation Tool)を使って ISO を入手してください。
Q: それでも直らない場合はどうするべきですか?
A: ディスクの不良、権限の深刻な破損、ドメインポリシーによる干渉が考えられます。ハードウェア診断やプロのサポートを検討してください。
まとめ
このエラーは「インストーラが期待するフォルダーやレジストリ値を見つけられない」ことが根本原因です。まずは安全な自動ツール(トラブルシューター、SFC、DISM)を実行し、それでもダメなら Users や Program Files の場所、ProgramFilesDir レジストリ、Windows Update サービス、アンチウイルス、ISO の正当性を順に確認してください。最終手段としてクリーンインストールを検討します。
重要: 常にデータのバックアップを取り、レジストリ編集やディスク操作は慎重に行ってください。