ProgramData フォルダーとは? 何を削除できる?
C:\ProgramData は、PC のすべてのアカウントで共有されるデータ(ライセンス、設定、更新のキャッシュ、データベース)をプログラムが置く、Windows の隠しフォルダーです。セキュリティソフト、Windows の機能、インストーラーが依存しているので、フォルダー自体を削除したり、まとめて空にしたりしないでください。古いエラーレポートや、本当に削除したプログラムのフォルダーは、確認したうえで消せることが多いです。それ以外は、プログラム自身のアンインストーラーや設定に任せるほうが安全です。
中身は何か
Microsoft はこれを既知のフォルダーと定義しており、環境変数は %ProgramData% です。標準では非表示なので、Win + R に %ProgramData% と入力して直接開くか、エクスプローラー › 表示 › 表示 › 隠しファイル をオンにします。
AppData との違いは、AppData が一つのアカウントのものであるのに対し、ProgramData はすべてのアカウントのものであることです。テスト用 ThinkPad では、Microsoft、Package Cache、ssh のほかに、Intel、Lenovo、Tencent などのベンダーのフォルダーがありました。
矢印の付いた Application Data や Documents のような項目も見えます。これらは古いプログラムのために残されたリンクで、実体のフォルダーではありません。その PC では、Application Data は C:\ProgramData に、Documents は C:\Users\Public\Documents に戻っていました。そのため、リンクをたどるツールは同じデータを二重、あるいはそれ以上に数えることがあります。
容量を使っているものを探す
次で大きいフォルダーを一覧できます。アクセスを拒否されるフォルダーを減らすため、PowerShell は管理者として実行してください。
Get-ChildItem $env:ProgramData -Directory -Force -Attributes !ReparsePoint | ForEach-Object {
[pscustomobject]@{ GB = [math]::Round((Get-ChildItem $_.FullName -Recurse -Force -File -Attributes !ReparsePoint -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum / 1GB, 2); Folder = $_.Name }
} | Sort-Object GB -Descending | Select-Object -First 15
消してよいものとそうでないもの
C:\ProgramData 下のパス |
何か | 消せるか |
|---|---|---|
Microsoft\Windows\WER\ReportArchive, ReportQueue |
古いエラーレポート | 消せます。管理者権限が必要 |
NVIDIA Corporation\NV_Cache |
シェーダーキャッシュ | 消せます。ゲームが再コンパイルします。シェーダーキャッシュを見てください |
| 削除したプログラムのフォルダー | 残ったデータ | 多くは消せます。名前を確認し、同じベンダーのほかの製品がインストールされていないことを確かめてください |
Package Cache |
修復と削除のために保持されたインストーラー | 消せません。Installer フォルダーを見てください |
Microsoft\Windows Defender |
セキュリティデータ | 消せません |
Microsoft\Crypto |
コンピューターのキーと証明書 | 消せません |
Microsoft\Windows\Start Menu |
すべてのアカウントのショートカット | 消せません。リンク切れのショートカットを除きます |
ssh |
OpenSSH サーバーのホストキー | 消せません |
Microsoft\Windows\Virtual Hard Disks |
Hyper-V のディスク | Hyper-V からのみ |
chocolatey、miniconda3、その他のパッケージマネージャー |
インストールされたツール | パッケージの削除はそのツールで行う |
| まだ使っているハードウェアのベンダーフォルダー | ドライバー、ツール、ライセンス | 消せません。ベンダーのアプリを使ってください |
| まだ使っているプログラムのもの | ライセンスやデータベースが多い | 消せません |
残ったフォルダーを削除する前に、設定 › アプリ › インストールされているアプリ で、同じベンダーのほかのものがないか確認してください。Adobe や Tencent のような発行元のフォルダーは、複数の製品で共有されていることがあります。まず別の場所に移すか名前を変え、数日間 PC を使ってみてください。確信が持てるまでは、自分用のコピーを残しておきます。
やってはいけないこと
C:\ProgramDataやそのMicrosoftフォルダーを削除しないでください。Windows の機能、Defender、インストーラーが壊れ、修復も困難です。- 削除するためにフォルダーの所有権を取得しないでください。保護されたものを消そうとしている兆候で、権限を変えると別の問題が起きます。
- ProgramData を別のドライブに移動しないでください。インストール済みの PC で移動する方法は Windows になく、Microsoft はリダイレクトすると更新やアップグレードが失敗することがあると警告しています。
- ツールがリンクをたどる場合、フォルダーの合計を信用しないでください。上のコマンドで測ってください。
Mole でできること
Mole for Windows の 分析 は、システムドライブ上の ProgramData とそのサイズを表示でき、Package Cache や WER などの既知のフォルダーには注記が付きます。その中のどれにも ごみ箱に移動 は用意されていません。そこでの削除は、あえてワンクリックで選べないようにしています。クリーン は、そこからシステムのエラーレポートと NVIDIA のシステムシェーダーキャッシュを一覧し、後者は未選択で、どちらも管理者権限が必要です。すべてのアカウントのスタートメニューにあるリンク切れのショートカットも一覧できます。アプリ からアプリをアンインストールすると、Mole は ProgramData にあるそのアプリ自身のフォルダーを確認用に一覧でき、ほかの製品と共有されている発行元フォルダーでは削除せず、そこで止まります。Mole が Package Cache を消すことはありません。
よくある質問
ProgramData フォルダーとは何ですか?
C:\ProgramData にある隠しフォルダーで、ライセンス、設定、キャッシュなど、PC のすべてのアカウントでプログラムが共有するデータを置きます。
ProgramData を削除できますか?
できません。古いエラーレポートや、削除したプログラムのフォルダーなど、確認したものだけを削除してください。
ProgramData が大きいのはなぜですか?
たいてい一つか二つのプログラムが原因です。インストーラーのキャッシュ、ウイルス対策のデータ、更新ファイル、パッケージマネージャーなどです。判断する前にフォルダーを測ってください。
ProgramData が見えないのはなぜですか?
隠されているからです。Win + R に %ProgramData% と入力するか、エクスプローラーで 表示 › 表示 › 隠しファイル をオンにしてください。
ProgramData と AppData の違いは何ですか?
AppData は一つのアカウントのもので、ProgramData は PC のすべてのアカウントで共有されます。どちらも隠されていて、キャッシュと必要なデータが混ざっています。