今回は、指定した日数前の Prefetchファイル(.pf)を自動で削除するツール「AutoDelPfFile」を作成してみましたので紹介したいと思います。
Prefetchファイルは、アプリが起動されたときに自動で「C:\Windows\Prefetch」フォルダーに作成され、次にアプリを開くときに、できるだけ速く起動できるようにするためのファイルです。
そのため、削除することは推奨されませんが、古い Prefetchファイルが Windows の起動やアプリの起動速度などに影響を与える場合があります。
Windows を使用していて、最近アプリの起動速度、Windows の起動速度が遅くなってしまったという経験はありませんか?
今までに何度も検証をしてみましたが、数か月以上更新のない Prefetchファイルを削除した場合、Windows の起動速度やアプリの起動速度が改善されることを確認しています。
※ここでの改善とは、遅くなる前の状態に戻ること。
Prefetch ファイルは手動で削除をしなくても、一定のファイル数を超えたり、不要なファイルだと Windows が判断をすると自動で削除される場合があります。(実際に削除されることを確認しました)
しかし、既に使わなくなったアプリの Prefetchファイル、更新日時が数か月前の古い Prefetchファイルは削除されずに残ったままになっている場合がありますので、今回自動で削除するツールを作成してみました。
Prefetchファイルをわかりやすく説明すると、「次はあれを使うかな?」と予想して、必要な情報を小さなファイルに記録しておきます。
そして、実際にそのアプリを開くときに、この Prefetchファイルの情報を使うことで、アプリがすぐに立ち上がるようにしてくれるのです。
Prefetchファイルには具体的にどんな情報が記録されている?
例えば、WPS Office で拡張子「.xlsx」のファイルを開いた場合、次のような情報が記録されます。
- 開いた「.xlsx」のファイル
- キャッシュファイル
- アプリケーションデータ
- DLLファイル
- NLS ファイル(各国語サポートの情報)
- プログラム(exe ファイル)
古い Prefetchファイルが Windows の起動やアプリの起動速度などに影響を与える可能性があるのは、例えばアプリが更新され、予想していた動作と異なる動作をした場合です。
「AutoDelPfFile」のダウンロード
対象ファイル:「AutoDelPfFile_Inst.exe」(Ver 1.0.0.0)
ハッシュ値(SHA256):5d027cdf8c5a29884e580e5b933f382c61f1ae43142bcc9b518eba27398bb62e
「AutoDelPfFile」のインストールとアンインストール
「AutoDelPfFile」は、以下の条件下で使用可能です。
- 「SysMain」サービスが有効である
- Windows 10 の 64ビットを使用している
- Windows 11 を使用している
インストール
1.ダウンロードした「AutoDelPfFile_Inst.zip」を解凍し、中にある「AutoDelPfFile_Inst.exe」を実行してください。
2.「ユーザーアカウント制御」が表示されたら「はい」をクリックします。
3.「AutoDelPfFile」のセットアップが表示されますので、
- タスクを実行する曜日にチェック
- タスク実行時間の選択
- 何日前のを Prefetchファイルを削除するかを選択
を行ってください。
次の画像は、月・水・金の 00:00 にタスクを実行し、10日前の Prefetchファイルを削除する例です。
4.すべて選択出来たら「インストール」ボタンをクリックします。

「インストールが完了しました。」と表示されたら、OK をクリックすると「AutoDelPfFile」のセットアップは終了します。
初めてインストールを実行した場合、セキュリティソフトが原因でタスクの登録が正常に行われない場合があります。
タスクスケジューラ開き、タスクが登録されているかを確認してください 。
タスクスケジューラを開くには、Windowsキー + R を押して「ファイル名を指定して実行」を開き、次のコマンドを入力して Enter を押します。
taskschd.msc
登録されていない場合は、一度アンインストールしてから再度インストールしてみてください。
「AutoDelPfFile」の仕組み
1.「AutoDelPfFile」のインストールを実行すると、「C:\Program Files\AutoDelPfFile」に「AutoDelPfFile.exe」がインストールされます。
2.「AutoDelPfFile」のセットアップで選択した項目を元に、次のレジストリキーに値を追加します。
HKEY_CURRENT_USER\Software\AutoDelPfFile
3.「AutoDelPfFile」のセットアップで選択した項目を元に、タスクスケジューラにタスクを追加します。
タスクはトリガーの通りに実行されます。
タスクが実行されると、「AutoDelPfFile.exe」が実行され、「C:\Windows\Prefetch」フォルダー内の各 Prefetchファイル(.pf)の更新日と現在の日時を比較し、レジストリ値「HowManyDaysAgo」の値のデータを読み取り、「10」なら 10日前の古い Prefetchファイル(.pf)を削除します。
現在の設定の確認とアンインストール
1.「AutoDelPfFile_Inst.exe」を実行してください。
2.「ユーザーアカウント制御」が表示されたら「はい」をクリックします。
3.「AutoDelPfFile」のセットアップが表示されますので、アンインストールしたい場合は「アンインストール」ボタンをクリックします。
4.「アンインストールが完了しました。ご使用ありがとうございました。」と表示されたら、OK をクリックすると「AutoDelPfFile」のセットアップは終了します。

この時点でレジストリキー、タスク、「C:\Program Files\AutoDelPfFile」フォルダーは削除されます。

コメント