winget・Microsoft Storeが動かない|0x80070780/0x80073CF9とApp Installer破損の最短復旧手順【Windows 11対応】

Windows 11/10 で winget や Microsoft Store が突然動かなくなり、App Installer が 0KB 化して起動不能、エラー 0x80070780/0x80073CF9 が並ぶ――そんな “詰み” に見える状況でも、実は最短で復旧できる鉄板手順があります。本記事は、実際の復旧事例をもとに、破損パッケージの除去から再登録、切り分け、最終修復までを一気通貫で解説します。

目次

「winget」/Microsoft Store が動作しない問題の全体像

症状(事例をもとに再掲)

  • winget upgrade --all が 0x80070780(ファイルにアクセスできません)で停止する。
  • Desktop App Installer(App Installer パッケージ)の実体が 0KB になっており起動不能。
  • Microsoft Store での更新も 0x80073CF9(インストール/更新失敗)で連続失敗。
  • sfc /scannow と DISM /RestoreHealth を実施しても改善しない。
  • Insider Build へアップデートしても問題が継続。

結論(最短ルート)

0KB 化した App Installer はファイルシステムレベルで破損しているため、一般的な SFC/DISM では直りません。最短で効くのは 「破損フォルダーの手動削除 → パッケージ再登録(再インストール)」 です。さらに、アカウント単位かシステム全体かを切り分けると、リセットや移行の判断が速くなります。

背景理解:winget と App Installer、Store の関係

winget(Windows Package Manager)は、Microsoft.DesktopAppInstaller(通称 App Installer)に含まれる実行基盤を前提に動作します。App Installer は Microsoft Store から配信される MSIX/APPX パッケージで、実体は C:\Program Files\WindowsApps 以下の Microsoft.DesktopAppInstaller_*_8wekyb3d8bbwe に格納されます。ここが破損(0KB 化、ACL 破綻、ハードリンク切れ等)すると、Store 更新も winget も連鎖的に失敗しがちです。

作業前の準備(超重要)

  • 必ず復元ポイントを作成(ローカル管理者で PowerShell)
Checkpoint-Computer -Description "Pre-AppInstaller-Fix" -RestorePointType "MODIFY_SETTINGS"
  • 必要ならユーザーデータのバックアップを取得(プロファイル配下のドキュメント、ピクチャ、AppData の設定など)。
  • C:\Program Files\WindowsApps は隠し/保護フォルダー。操作は自己責任、かつ最小限に。可能であれば対象サブフォルダーだけを削除してください。

解決策・手順(保存版)

手順 1:破損したパッケージを手動で除去

  1. 管理者権限のコマンド プロンプトを開き、所有権とアクセス権を取得。
takeown /f "C:\Program Files\WindowsApps" /r /d y
icacls "C:\Program Files\WindowsApps" /grant administrators:F /t

※この操作は広範囲です。原則として WindowsApps 全体をいじらず、目的のサブフォルダーだけ削除するのが安全です。所有権取得後は不要な変更を広げないこと。

  1. 以下のフォルダーを削除(存在するもののみ)。
  • C:\Program Files\WindowsApps\Microsoft.DesktopAppInstaller_*_8wekyb3d8bbwe
  • %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_*_8wekyb3d8bbwe

補足:削除に失敗する場合は、プロセスが掴んでいることがあります。いったんサインアウト/再起動して、起動直後に同作業を実施するか、セーフモードで実行してください。

(任意)権限を元に戻す

広範囲に所有権を変更した場合は、完了後に TrustedInstaller へ戻しておくと安心です(省略可)。

icacls "C:\Program Files\WindowsApps" /setowner "NT SERVICE\TrustedInstaller" /t /c

手順 2:PowerShell で再登録(再インストール)

  1. 管理者権限のPowerShellを起動。
  2. インストール済みパッケージ名を確認。
Get-AppxPackage -Name *DesktopAppInstaller*
  1. 表示された正確なパッケージ名でアンインストール(例)。
Remove-AppxPackage -Package "Microsoft.DesktopAppInstaller_1.27.210.0_x64__8wekyb3d8bbwe"
  1. Store キャッシュをリセット。
Wsreset.exe
  1. 公式のリリースから最新版の Microsoft.DesktopAppInstaller.msixbundle をダウンロード。
  2. 同ディレクトリで再インストール(PowerShell)。
Add-AppxPackage -Path ".\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" `
  -ForceApplicationShutdown -ForceUpdateFromAnyVersion
  1. PC を再起動。

補足:インストール画面が「Initialization」で止まっているように見えても、再起動後に反映され正常動作するケースがあります。

手順 3:ユーザープロファイルとシステム全体の切り分け

  • 新しいローカル管理者アカウントを作成し、Sign in → Microsoft Store/winget の動作確認。
  • 新規アカウントが正常:元アカウントのプロファイル破損の可能性が高い → 必要なデータを移行。
  • 新規アカウントでも不具合:システム全体の破損の可能性 → 手順 4 へ。

手順 4:システム修復(全体破損の場合)

  1. 設定 → システム → 回復 → Reinstall now(Windows Update 型の修復インストール)。
  2. 改善しない場合:インプレース アップグレード(メディアからの上書き修復)を実施。
  3. それでもダメなら:この PC をリセット → 個人ファイルを保持 を選択して初期化。

※いずれも実行前のバックアップを推奨します。

復旧後の確認ポイント

  • winget --info がエラーなく表示される。
  • winget source reset --force および winget upgrade がエラーなく実行できる。
  • Microsoft Store で App Installer/他アプリの更新が完了する。

エラーコードの意味と着眼点

エラーコード典型的な意味主な原因候補有効な対処
0x80070780ファイルにアクセスできない(破損/権限/ロック)WindowsApps 内のパッケージ実体が 0KB 化/ACL 崩壊/使用中該当フォルダーの削除 → 再登録、起動直後/セーフモードで再試行
0x80073CF9Store のインストール/更新失敗(配置エラー)AppX/MSIX の検証失敗、必要フォルダー欠落、キャッシュ破損Wsreset、破損パッケージ除去、Add-AppxPackage での再展開

なぜ SFC/DISM では直らないのか

App Installer は Store 配信の MSIX パッケージです。SFC/DISM は OS コンポーネント ストア(WinSxS)とシステム ファイルの整合性を主に照合しますが、Store 配信アプリの実体破損(特に WindowsApps 配下のユーザーモード パッケージ)までは一律に修復しません。0KB 化や ACL 破綻が起きている場合は、物理ファイルを除去→パッケージ再登録が最短です。

安全に作業するためのコツ

  • 最小権限・最小範囲:WindowsApps 直下全体の権限を変更するのは最後の手段。可能なら該当サブフォルダーのみに限定。
  • 再起動のタイミング:所有権取得後や削除後に再起動 → 再登録 → 再起動、の 2 回サイクルが堅実。
  • ストレージ健全性:chkdsk /scan で論理エラー確認。SSD の S.M.A.R.T. も点検。
  • 常駐の干渉:セキュリティ製品が WindowsApps を監視/隔離していると再展開に失敗することあり。一時的に保護を緩めて試行。

検証・ログ収集のヒント

  • winget ログ:%LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\(DiagOutputDir や WinGet 配下)
  • イベントビューア:アプリケーションとサービス ログ → Microsoft → Windows → AppXDeployment-Server(操作系)
  • Store キャッシュ:Wsreset.exe 実行後に再起動してから試す。

具体的コマンド集(コピペ用)

winget の基本確認

winget --info
winget source reset --force
winget upgrade

App Installer の検出と削除/再登録

# 検出
Get-AppxPackage -Name *DesktopAppInstaller* | Select Name, PackageFullName

# 削除(ユーザー単位)

Get-AppxPackage -Name *DesktopAppInstaller* | Remove-AppxPackage

# 再登録(msixbundle を配置したディレクトリで)

Add-AppxPackage -Path ".\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" `
-ForceApplicationShutdown -ForceUpdateFromAnyVersion 

ユーザープロファイル vs システム全体:切り分け早見表

観点ユーザープロファイル破損システム全体破損
新規ローカル管理者アカウント正常に動く同様に不具合
Store サインイン状態サインアウト/サインインで改善することあり無関係なことが多い
対処の優先データ移行+新規プロファイル利用へインプレース or リセットを検討

やってはいけない NG パターン

  • WindowsApps を丸ごと削除:OS/Store 配信アプリが崩壊します。対象サブフォルダーに限定。
  • 権限設定を放置:所有権を管理者に変えたままは、将来の更新失敗の温床。可能なら TrustedInstaller に戻す。
  • Store の「修復」「リセット」だけを連打:App Installer 実体が 0KB の場合は効果薄。物理フォルダー除去が先。

再発防止のチェックリスト

  • OS と Store アプリを定期更新(再起動を先送りしすぎない)。
  • ディスクエラーや突然の電源断を避ける(ファーム更新、電源設定の適正化)。
  • 信頼できない「クリーナー」や過激な権限変更ツールを使わない。
  • 重要フォルダーのアクセス権を変更したらメモ/自動化スクリプトで復元手段を残す。

よくある質問(FAQ)

Q. Remove-AppxPackage がエラーで削除できません。

A. 実体ファイルが破損/ロックされている可能性。手順 1 のフォルダー削除を先に行い、再起動後に再試行してください。セーフモードでの削除も有効です。

Q. Add-AppxPackage 時に「権限がありません」と出ます。

A. 管理者権限で PowerShell を開いているか確認。WindowsApps の ACL が壊れている場合は、最小限の権限復旧(所有権取得 → 削除 → 再登録 → TrustedInstaller へ戻す)を行ってください。

Q. インストーラーが「Initialization」で止まったように見えます。

A. 実際にはバックグラウンドで配置が完了している場合があります。いったん再起動してから動作確認してください。

実例:本記事の質問ケースの最終結果

質問者は上記の手順 2 まで(PowerShell での正しいパッケージ名の取得 → Remove-AppxPackage → Add-AppxPackage → 再起動)を実施し、winget と Microsoft Store が正常復旧しました。特に「正確なパッケージ名で Remove する」ことと「再起動を挟む」ことが決定打になっています。

ポイントまとめ(おさらい)

  • App Installer が 0KB 化している場合は、フォルダー削除 → パッケージ再登録が最速。
  • Get-AppxPackage で正確なパッケージ名を取得してから Remove-AppxPackage を実行。
  • インストール UI が止まって見えても、再起動で反映されることがある。
  • 新規ユーザーで正常ならプロファイル破損、両方ダメならシステム破損。以後の対処の判断が速くなる。

付録:一括メンテナンス用スクリプト(慎重に)

以下は、対象フォルダーが存在する場合のみ除去して再登録する PowerShell の例です。実行前に復元ポイントとバックアップを必ず作成し、内容を理解した上で使用してください。

$ErrorActionPreference = "Stop"

Write-Host "=== Pre-check ==="
Checkpoint-Computer -Description "Pre-AppInstaller-Script" -RestorePointType "MODIFY_SETTINGS" | Out-Null

$pkgName = (Get-AppxPackage -Name *DesktopAppInstaller* | Select-Object -First 1 -ExpandProperty PackageFullName)
Write-Host "Found package:" $pkgName

Write-Host "=== Remove user package if present ==="
if ($pkgName) {
try { Remove-AppxPackage -Package $pkgName -ErrorAction Stop } catch { Write-Warning $_ }
}

Write-Host "=== Remove residual folders if present ==="
$targets = @(
"$env:ProgramFiles\WindowsApps\Microsoft.DesktopAppInstaller_**8wekyb3d8bbwe",
"$env:LOCALAPPDATA\Packages\Microsoft.DesktopAppInstaller***8wekyb3d8bbwe"
)
foreach ($t in $targets) {
Get-ChildItem $t -ErrorAction SilentlyContinue | ForEach-Object {
Write-Host "Removing $($*.FullName)"
try { Remove-Item -LiteralPath $*.FullName -Recurse -Force -ErrorAction Stop } catch { Write-Warning $* }
}
}

Write-Host "=== Reset Store cache ==="
Start-Process -FilePath "Wsreset.exe" -Wait

Write-Host "=== Reinstall App Installer ==="

# 事前に msixbundle をこのスクリプトと同じ場所へ保存しておく

$bundle = Get-ChildItem -Filter "Microsoft.DesktopAppInstaller*.msixbundle" -File | Select-Object -First 1
if (-not $bundle) { throw "msixbundle が見つかりません。同一フォルダーに配置してください。" }

Add-AppxPackage -Path $bundle.FullName -ForceApplicationShutdown -ForceUpdateFromAnyVersion

Write-Host "=== Done. Please reboot. ===" 

付録:トラブル時の追加チェック

  • サービス状態:Windows Update、Background Intelligent Transfer Service、Microsoft Store Install Service が停止していないか。
  • ネットワーク:企業プロキシや TLS 検査が Store 通信を妨げていないか。
  • 日時/地域:時刻ずれで証明書検証に失敗していないか。

この記事の使い方(現場向けショートガイド)

  1. 復元ポイントを作成 → バックアップ。
  2. 対象フォルダー(DesktopAppInstaller_*_8wekyb3d8bbwe)を削除。
  3. PowerShell で Remove-AppxPackage → Wsreset.exe → Add-AppxPackage。
  4. 再起動後、winget source reset --force → winget upgrade で確認。
  5. 切り分け:新規ローカル管理者で動くか検証。必要に応じてシステム修復へ。

質問概要(原文要約)

  • 症状
    • winget upgrade --all が 0x80070780 で停止。
    • Desktop App Installer の実体ファイルが 0KB で起動不能。
    • Microsoft Store 更新が 0x80073CF9 で失敗。
    • sfc /scannow と DISM /RestoreHealth でも改善せず。
    • Insider Build へアップデート後も継続。

最終的な解決

手順 2(PowerShell による正しいパッケージ名の指定と再インストール)まで実施し、再起動したところ、winget と Microsoft Store が正常に復旧しました。

運用 TIPS:万一に備える小ワザ

  • App Installer のバージョンとハッシュを台帳管理(いつでもロールバック可能に)。
  • 復旧スクリプトは Intune/Configuration Manager に登録し、緊急配布できる形で保管。
  • イベントログのカスタムビューを作っておく(AppXDeployment-Server のエラーだけ抽出)。

チェックリスト(印刷用)

項目実施備考
復元ポイント作成□Checkpoint-Computer
対象フォルダー削除□WindowsApps / LocalState の該当のみ
Remove-AppxPackage□正確なパッケージ名で
Wsreset 実行□再起動を伴うと確実
Add-AppxPackage 再登録□最新版 msixbundle
再起動□Initialization 停止見えでも実施
winget/Store 動作確認□source reset / upgrade
切り分け(新規アカウント)□プロファイル破損判定
システム修復(必要時)□Reinstall now → インプレース → リセット

最後に

App Installer の 0KB 化は、見た目以上に深刻ですが、対処のセオリーは単純です。破損実体の除去 → 再登録 → 再起動を核に、プロファイル/システムの切り分けと段階的な修復を組み合わせれば、ほとんどのケースで短時間に復旧できます。本記事が現場での迅速な復旧に役立てば幸いです。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次