List all recently run programs on a Windows PC
Do you know which programs ran in the past on your Windows PC? It is likely that you know at least some of them, the programs that you have started manually for example.
Depending on how the computer is used, it may be just a tiny fraction of executable files that are run on the system.
Files may be executed automatically by the operating system for example, or by other users who have access to the system (and same user account).
If you want to display a list of recently run programs on the PC, you can do so in two different ways:
- Check the Windows Registry and Prefetch data manually.
- Run ExecutedProgramsList, a free program that does all the heavy lifting for you.
Registry
Several Registry Keys store information about programs that have been executed previously on the system:
- HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
- HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache
- HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Persisted
- HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store
To open them tap on the Windows-key, type regedit and hit enter. This should open the Windows Registry editor. You may receive a UAC prompt which you need to accept.
Use the left sidebar to navigate to the folders listed above. There you find lists of programs that have been executed on the PC.
ExecutedProgramsList
ExecutedProgramsList is a portable program for Windows. All you need to do is download it to your local system, extract it and run it afterwards.
It will pull data from all data sources and display them sorted in its interface after a brief moment.
Programs are sorted by path and name by default which you can change with a click on a table header. It is for instance possible to sort the listing by last execution date, by creation date, or by size.
You can use the search to find programs of interest, or browse the selection manually instead. You will notice that the list contains a mixture of programs that you have started manually and programs that were started automatically by the operating system.
Some programs are listed with limited information. You may notice that some are listed only with their path and name, while others may reveal additional information but not all of them.
Since this is a Nirsoft program, you can export the data to txt, csv or xml files, or generate a HTML report instead listing the selected information or all of them.
Tip: Programs like CCleaner or PrivaZer don't remove all information by default. You can add the locations manually to those programs or delete the data in the Registry directly in the Registry Editor.
Closing Words
ExecutedProgramsList is another useful Nirsoft application that may come in handy at times. Since it is portable and tiny, it is perfect tool for a collection of system and maintenance tools.
I think sysinternals procmon (Process Monitor) does this job too.
i want to trace the working hours of any application of user means how much user spent on specific application. i just want to know only that how to find the process which are run only by users. how can i do that using c# language please help me…thanks
In ExecutedProgramsList, unfortunately the “Last Executed On” column is completely empty! (Windows 7 x64). I’ve even tried to run it as Administrator! Any advice?
This is very similar to a third party version of task manager I can’t recall exactly what it was called. Programs like this can be very useful but it can also trigger paranoia and i definitely don’t recommend it for anyone with OCD!
Good freeware, thanks Martin for the news.
I have been looking for something like this, for quite some time. Thanks! Will definitely try it out.
There is a year bug in the most imported field/column: “Last Executed On”.