Upload files to "/"
This commit is contained in:
@@ -0,0 +1,232 @@
|
||||
# Bloatware Removal Scripts
|
||||
|
||||
Comprehensive scripts to silently remove manufacturer bloatware from PCs. Supports HP, Lenovo, ASUS, and Dell systems.
|
||||
|
||||
## Scripts Included
|
||||
|
||||
### 1. **Remove-AllBloat.ps1** (Recommended)
|
||||
Removes bloatware from all four manufacturers in a single execution.
|
||||
|
||||
**Usage:**
|
||||
```powershell
|
||||
# Run with elevated privileges
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"
|
||||
|
||||
# Or run silently in background
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File "Remove-AllBloat.ps1" >$null 2>&1
|
||||
```
|
||||
|
||||
### 2. **Remove-HPBloat.ps1**
|
||||
Targets HP-specific bloatware only.
|
||||
|
||||
**Usage:**
|
||||
```powershell
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File "Remove-HPBloat.ps1"
|
||||
```
|
||||
|
||||
### 3. **Remove-LenovoBloat.ps1**
|
||||
Targets Lenovo-specific bloatware only.
|
||||
|
||||
**Usage:**
|
||||
```powershell
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File "Remove-LenovoBloat.ps1"
|
||||
```
|
||||
|
||||
### 4. **Remove-ASUSBloat.ps1**
|
||||
Targets ASUS-specific bloatware only.
|
||||
|
||||
**Usage:**
|
||||
```powershell
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File "Remove-ASUSBloat.ps1"
|
||||
```
|
||||
|
||||
### 5. **Remove-DellBloat.ps1**
|
||||
Targets Dell-specific bloatware only.
|
||||
|
||||
**Usage:**
|
||||
```powershell
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File "Remove-DellBloat.ps1"
|
||||
```
|
||||
|
||||
### 6. **Run-AllBloat.bat**
|
||||
Batch file wrapper for silent execution via Command Prompt or Task Scheduler.
|
||||
|
||||
**Usage:**
|
||||
```cmd
|
||||
Run-AllBloat.bat
|
||||
```
|
||||
|
||||
## Silent Execution Methods
|
||||
|
||||
### Method 1: Batch File
|
||||
```cmd
|
||||
Run-AllBloat.bat
|
||||
```
|
||||
|
||||
### Method 2: PowerShell Silent Mode
|
||||
```powershell
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File "Remove-AllBloat.ps1" >$null 2>&1
|
||||
```
|
||||
|
||||
### Method 3: Task Scheduler (Automated)
|
||||
```powershell
|
||||
$TaskName = "Remove Bloatware"
|
||||
$TaskPath = "C:\path\to\Run-AllBloat.bat"
|
||||
|
||||
$Action = New-ScheduledTaskAction -Execute "$TaskPath"
|
||||
$Trigger = New-ScheduledTaskTrigger -AtStartup
|
||||
$Principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -RunLevel Highest
|
||||
|
||||
Register-ScheduledTask -TaskName $TaskName -Action $Action -Trigger $Trigger -Principal $Principal
|
||||
```
|
||||
|
||||
### Method 4: Quiet PowerShell Execution
|
||||
```powershell
|
||||
Start-Process powershell.exe -ArgumentList "-NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -File `"Remove-AllBloat.ps1`"" -WindowStyle Hidden -Wait
|
||||
```
|
||||
|
||||
## What Gets Removed
|
||||
|
||||
### HP
|
||||
- HP Support Assistant & Alerts
|
||||
- HP Cloud Recovery
|
||||
- HP Security Update
|
||||
- HP Wireless Assistant
|
||||
- HP Print Library
|
||||
- Various printer drivers (Deskjet, Officejet, Photosmart, Envy, LaserJet)
|
||||
- Related services and scheduled tasks
|
||||
|
||||
### Lenovo
|
||||
- Lenovo Vantage & Settings
|
||||
- Lenovo Companion
|
||||
- Power Management utilities
|
||||
- System Update tools
|
||||
- Lenovo OneKey Theater/Optimizer
|
||||
- Easy Camera
|
||||
- Related services and scheduled tasks
|
||||
|
||||
### ASUS
|
||||
- ASUS Live Update
|
||||
- ASUS WebStorage
|
||||
- ASUS Gamer OSD
|
||||
- ASUS Ambient & FX
|
||||
- Smart Gesture & Safe Face
|
||||
- Keyboard & Touchpad utilities
|
||||
- Turbo, GameVisual, Controller software
|
||||
- Related services and scheduled tasks
|
||||
|
||||
### Dell
|
||||
- Dell Update & System Detect
|
||||
- SupportAssist utilities
|
||||
- Display Manager & Easy Access
|
||||
- Dell Optimizer & Power Manager
|
||||
- Dell Dock
|
||||
- Command Update
|
||||
- Related services and scheduled tasks
|
||||
|
||||
## Removal Methods
|
||||
|
||||
Each script uses multiple methods to ensure complete removal:
|
||||
|
||||
1. **WMI Uninstall** - Uses Win32_Product class to uninstall applications
|
||||
2. **AppxPackage Removal** - Removes UWP apps for Windows 10+
|
||||
3. **Service Disabling** - Stops and disables associated Windows services
|
||||
4. **Task Scheduler Cleanup** - Removes scheduled tasks
|
||||
5. **Registry Cleanup** - Removes uninstall and run registry entries
|
||||
6. **Directory Removal** - Deletes installation directories
|
||||
|
||||
## Silent Failure
|
||||
|
||||
All scripts use `$ErrorActionPreference = 'SilentlyContinue'` to ensure:
|
||||
- No error messages appear
|
||||
- Script continues if an application isn't found
|
||||
- Script runs without user interaction
|
||||
- No output unless explicitly shown
|
||||
|
||||
## Requirements
|
||||
|
||||
- **Windows 10 or later**
|
||||
- **Administrator privileges**
|
||||
- **PowerShell 5.0 or later**
|
||||
|
||||
## Safety Notes
|
||||
|
||||
- These scripts are safe for end-user PCs and corporate deployments
|
||||
- No critical system files are removed
|
||||
- Manufacturer bloatware is frequently re-installed by update utilities
|
||||
- Consider re-running periodically or disabling manufacturer update services
|
||||
- Backup important data before running (though these scripts do not affect user data)
|
||||
|
||||
## Deployment Tips
|
||||
|
||||
### For Single PC:
|
||||
```powershell
|
||||
# Download and run directly
|
||||
powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"
|
||||
```
|
||||
|
||||
### For Multiple PCs (via Group Policy):
|
||||
Create a scheduled task with:
|
||||
- **Trigger:** At Startup or On a Schedule
|
||||
- **Action:** Run `Run-AllBloat.bat` with highest privileges
|
||||
- **Hidden:** Yes (Run with highest privileges)
|
||||
|
||||
### For Network Deployment:
|
||||
```powershell
|
||||
# Copy script to network share, then execute on remote machines
|
||||
$Computer = "REMOTE-PC"
|
||||
$Script = "\\share\Remove-AllBloat.ps1"
|
||||
|
||||
Invoke-Command -ComputerName $Computer -FilePath $Script
|
||||
```
|
||||
|
||||
## Logging (Optional)
|
||||
|
||||
To add logging, modify the scripts to include:
|
||||
```powershell
|
||||
$LogFile = "C:\Logs\bloatware-removal.log"
|
||||
Add-Content -Path $LogFile -Value "$(Get-Date): Bloatware removal started"
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Script won't run
|
||||
- Ensure Administrator privileges: `Run as Administrator`
|
||||
- Check execution policy: `Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser`
|
||||
|
||||
### AppxPackage removal fails
|
||||
- This is normal on systems without UWP apps
|
||||
- The script handles this silently
|
||||
|
||||
### Services won't stop
|
||||
- Some services may be in use; this is handled silently
|
||||
- System will restart to complete removal
|
||||
|
||||
### Registry entries remain
|
||||
- Some entries may be protected; the script handles this silently
|
||||
- These won't cause issues as the applications are removed
|
||||
|
||||
## Command Reference
|
||||
|
||||
```powershell
|
||||
# Run all manufacturers
|
||||
powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"
|
||||
|
||||
# Run HP only
|
||||
powershell -ExecutionPolicy Bypass -File "Remove-HPBloat.ps1"
|
||||
|
||||
# Run silently in background (no window)
|
||||
powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"
|
||||
|
||||
# Run with no output
|
||||
powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1" >$null 2>&1
|
||||
```
|
||||
|
||||
## Legal Notice
|
||||
|
||||
These scripts are designed for:
|
||||
- Enterprise IT administrators removing pre-installed software
|
||||
- Individual users cleaning their own systems
|
||||
- Educational purposes
|
||||
|
||||
These scripts should only be used on systems you own or have authorization to manage.
|
||||
Reference in New Issue
Block a user