A comprehensive Windows application uninstaller with cleanup capabilities, built with Python and ttkbootstrap.
-
Registry Reading: Reads installed applications from Windows registry
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
-
Application Information: Displays for each app:
- Display Name
- Version
- Publisher
- Install Date
- Uninstall Command
- Modern Interface: Built with ttkbootstrap for a beautiful, modern UI
- Search & Filter: Real-time search and system app filtering
- Sortable Columns: Click column headers to sort applications
- Theme Toggle: Switch between dark and light themes
- Responsive Layout: Resizable window with dynamic layout
- Silent Uninstall: Automatically modifies commands for silent operation
.exefiles: Adds/Sparameter.msifiles: Usesmsiexec /x {GUID} /qn
- Confirmation Dialogs: Safe uninstall with user confirmation
- Threaded Operations: Non-blocking uninstall operations
- Automatic Cleanup: Removes leftover files after uninstall
- Manual Cleanup: Cleanup option without uninstalling
- Target Locations:
C:\Program FilesC:\Program Files (x86)%LOCALAPPDATA%%APPDATA%- Desktop shortcuts
- Start Menu shortcuts
- Activity Logging: Real-time log display with timestamps
- File Logging: Saves to
uninstall_log.txt - Export Options: Export to CSV or JSON format
- Error Handling: Comprehensive error handling and user feedback
- Python 3.8 or higher
- Windows 10/11
pip install -r requirements.txtpython uninstall_gui.pypyinstaller uninstall_gui.py --onefile --noconsole --name="SmartUninstaller"pyinstaller uninstall_gui.py --onefile --noconsole --icon=icon.ico --name="SmartUninstaller"- Launch the application
- Wait for applications to load (reads from registry)
- Search or filter applications as needed
- Select an application from the list
- Review details in the right panel
- Click Uninstall or Cleanup as desired
- Use the search box to find specific applications
- Toggle "Hide System Apps" to filter out Microsoft/system applications
- Click column headers to sort by different criteria
- Click the "π€ Export" button
- Choose between CSV or JSON format
- Select save location and filename
- Click the theme button (π/βοΈ) to switch between dark and light themes
Ctrl+F: Focus on search boxF5: Refresh application list
The application reads from multiple registry locations to ensure comprehensive application detection:
- System-wide applications (HKEY_LOCAL_MACHINE)
- User-specific applications (HKEY_CURRENT_USER)
- 32-bit applications on 64-bit systems (WOW6432Node)
- EXE files: Adds
/Sparameter for silent execution - MSI files: Uses
msiexec /x {GUID} /qnfor silent uninstall - Existing silent params: Preserves existing silent parameters
- Name matching: Direct and partial name matching
- Common locations: Program Files, AppData, Desktop, Start Menu
- Safe removal: Error handling for locked files/folders
- Some operations may require administrator privileges
- The application will warn if not running as administrator
- Registry access and file cleanup work best with admin rights
- Confirmation dialogs for all destructive operations
- Logging of all operations for audit trail
- Error handling for failed operations
- Timeout protection for uninstall operations (5 minutes)
- System applications are identified by publisher/name patterns
- Can be filtered out using the "Hide System Apps" toggle
- Exercise caution when uninstalling system components
- Check if running as administrator
- Verify registry access permissions
- Check Windows Defender/firewall settings
- Ensure application is not running
- Try running as administrator
- Check uninstall command in registry
- Review log for specific error messages
- Some files may be locked by running processes
- Check file permissions
- Review log for specific cleanup errors
- Application logs are saved to
uninstall_log.txt - GUI log is displayed in real-time in the application
- Export logs for troubleshooting
This project is open source and available under the MIT License.
Contributions are welcome! Please feel free to submit issues and pull requests.
For issues, questions, or feature requests, please open an issue on the project repository.