A Process blocker (like Task Manager) for windows. Written in python. Executable using cxFreeze
Process Blocker This is an application that list the currently running processes on the system that were started by the user, with the options to either terminate(kill) the process or block the process from running again on the computer.
Features:
- Only show user processes, so as to not accidently block or terminate important system processes
- Processes are blocked after a reboot
- It checks the registry for already blocked processes and shows them, in case someone deletes the application after blocking something
- It only shows one name for each process so you don’t have to guess which process is the parent process (eg: chrome shows up as multiple processes in task manager, but only one in this application)
- Can select multiple applications at once
- Written in python
Usage: To use the application, run it as Administrator. (Right click ProcessBlocker.exe, select run as administrator)
- Select process (or multiple processes) from the list of active processes shown
- If you open a new process after starting the application, refresh it and it should show up on the active processes list
- Click ‘Terminate’ to kill the Process or ‘Block’ to block the process from running again. Note that blocking a process also terminates it
- You should see the applications you blocked in the blocked processes list
- Reboot to apply changes. If unblocking, no reboot is required
Made using:
- Psutil module for getting list of processes
- Winreg module to edit registry
- GUI made using tkinter module
Pictures of the application in use:
Further extension: A list of all “installed” applications, i.e. all applications that were installed using a windows installer can be listed by using the command “wmic product get name”. We can get more details about this by including more columns to the search query such as AssignmentType, Caption, Description, HelpLink, HelpTelephone, IdentifyingNumber, InstallDate, InstallDate2, InstallLocation, InstallSource, InstallState, Language, LocalPackage, Name, PackageCache, PackageCode, PackageName, ProductID, RegCompany, RegOwner, SKUNumber, Transforms, URLInfoAbout, URLUpdateInfo, Vendor, Version, WordCount Or get all available information using “wmic product get * ” This will return a list of all the names of the applications installed on the windows machine. This list can also be alternatively generated by browsing the registry key : “Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall” but this list is more complicated and there are some keys that differ between application to application, hence the wmic method is preferred.