A modern, user-friendly desktop application built with PyQt5 that helps you manage and close running applications on Windows systems. Features a dark theme with VS Code-inspired styling and safe process management.
- Smart Process Detection: Automatically identifies user applications while excluding critical system processes
- Safe Application Closing: Terminates applications with proper process handling
- Memory Usage Display: Shows memory consumption for each running application
- Multi-Selection Support: Select and close multiple applications at once
- Bulk Operations: Close all non-essential applications with one click
-
Modern Dark Theme: VS Code-inspired color scheme
-
Responsive Design: Clean and intuitive layout
-
Real-time Updates: Live application list with current memory usage
-
Progress Indicators: Visual feedback for long operations
-
Professional Styling: Custom scrollbars, buttons, and animations
- Automatic PyCache Cleanup: Cleans Python cache directories on application close
- Safe Process Filtering: Protects critical system processes from accidental closure
- Error Handling: Robust error management with user-friendly messages
- Performance Optimized: Efficient process enumeration and memory management
- Python 3.6 or higher
- Windows Operating System (tested on Windows 10/11)
Install the required dependencies using pip:
pip install pyqt5 psutil pywin32-
Clone or download the project files:
main.py- Main application logicstyle.py- Application styling and themes
-
Ensure all dependencies are installed:
pip install pyqt5 psutil pywin32
-
Run the application:
python main.py
python main.pyThe application will automatically scan for running user applications and display them in a sorted list by memory usage.
- Refresh List: Click the "Refresh" button to update the application list
- Select Applications: Click on individual applications or use Ctrl+Click for multiple selection
- Close Selected: Click "Close Selected" to terminate chosen applications
- Close All: Click "Close All" to close all non-system applications
- Protected System Processes: Critical Windows processes are automatically excluded
- Confirmation Dialogs: All close operations require user confirmation
- Memory Protection: System processes and services are never shown or closed
The application automatically protects these critical system processes:
explorer.exe- Windows Explorercsrss.exe- Client Server Runtime Processwinlogon.exe- Windows Logon Applicationservices.exe- Service Control Managerlsass.exe- Local Security Authority Processsvchost.exe- Service Host Processsystem- System Processsystem idle process- System Idle Processwininit.exe- Windows Initialization Processdwm.exe- Desktop Window Managertaskhostw.exe- Host Process for Windows Tasksctfmon.exe- Alternative Input Services
- Frontend: PyQt5 with custom QSS styling
- Process Management: psutil for process enumeration and management
- Windows Integration: pywin32 for window management and process details
- Memory Management: Efficient garbage collection and resource cleanup
- Enumeration: Iterates through all running processes
- System Filtering: Excludes processes from Windows system directories
- GUI Detection: Filters processes without visible windows
- User Filtering: Excludes system user processes (SYSTEM, LOCAL SERVICE, etc.)
- Memory Calculation: Calculates and displays memory usage in MB
- Multiple validation layers for process identification
- Graceful termination attempts before force killing
- Comprehensive error handling and user feedback
- Protected process whitelist
The application includes an automatic cleanup feature that:
- Removes all
__pycache__directories in the project folder - Deletes individual
.pyccache files - Runs automatically when the application closes
- Provides console feedback about cleanup operations
-
"Access Denied" errors
- Run the application as Administrator
- Some system processes require elevated privileges
-
Missing applications in list
- Applications without visible windows are filtered out
- System processes are intentionally excluded for safety
-
Application fails to close
- Some applications may resist termination
- The app attempts both graceful and forced termination
- Administrative privileges may be required for some apps
- The initial scan may take a few seconds on systems with many processes
- Use the refresh button sparingly to avoid unnecessary system scans
- Closing many applications simultaneously may temporarily impact system performance
app-closer/
βββ main.py # Main application logic
βββ style.py # UI styles and themes
βββ README.md # This file
- PEP 8 compliance
- Type hints where applicable
- Comprehensive error handling
- Modular design for easy maintenance
No special build process required. The application runs directly from Python source.
This project is provided for educational and personal use. Please ensure you have the right to manage processes on systems where this application is deployed.
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
- This application terminates processes - use with caution
- Always save your work before closing applications
- The application is designed to be safe but cannot prevent data loss in unsaved applications
- Run with appropriate permissions for your use case
For issues and questions:
- Check the troubleshooting section above
- Ensure all dependencies are properly installed
- Verify Python version compatibility
- Check Windows system requirements
Note: This tool is designed for technical users who understand the implications of process termination. Use responsibly and always ensure important work is saved before closing applications.