Files
2026-07-21 09:57:38 +02:00

8.1 KiB

Bloatware Removal - Quick Start Guide

🚀 Quick Commands

Option 1: Remote Execution (No Download Needed)

Run directly from Git repository - nothing to install!

# One-liner to run from internet (Admin auto-elevation)
powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content"

Option 2: Run Locally (If Downloaded)

# Open PowerShell as Administrator, then:
powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"

Option 3: Silent Background Run

powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"

Option 4: Batch File (No PowerShell Window)

Run-AllBloat.bat

📋 What Each Script Does

Script Purpose Use When
Remove-AllBloat.ps1 Removes ALL bloatware (HP, Lenovo, ASUS, Dell) You have mixed systems or want everything at once
Remove-HPBloat.ps1 HP only You only have HP systems
Remove-LenovoBloat.ps1 Lenovo only You only have Lenovo systems
Remove-ASUSBloat.ps1 ASUS only You only have ASUS systems
Remove-DellBloat.ps1 Dell only You only have Dell systems
Deploy-ScheduledTask.ps1 Schedule automatic removal You want it to run automatically
Deploy-ToRemote.ps1 Push to multiple PCs You're managing many computers
Verify-Removal.ps1 Check if bloatware is gone You want to confirm removal worked

🎯 Common Scenarios

Single PC - Run Now (From Internet)

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content"

Single PC - Run Now (Local File)

powershell -ExecutionPolicy Bypass -File "Remove-AllBloat.ps1"

Then check results with:

powershell -ExecutionPolicy Bypass -File "Verify-Removal.ps1"

Single PC - Auto-Remove Every Startup

powershell -ExecutionPolicy Bypass -File "Deploy-ScheduledTask.ps1" -Trigger Startup

Multiple PCs (5 Lenovo computers)

$Computers = "PC1", "PC2", "PC3", "PC4", "PC5"
powershell -ExecutionPolicy Bypass -File "Deploy-ToRemote.ps1" -ComputerName $Computers -LocalScriptPath "Remove-LenovoBloat.ps1"

Verify Removal on Current PC

powershell -ExecutionPolicy Bypass -File "Verify-Removal.ps1"

🌐 Remote Execution URLs

Run any script directly from the Git repository without downloading:

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-AllBloat.ps1' -UseBasicParsing).Content"

HP Only

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-HPBloat.ps1' -UseBasicParsing).Content"

Lenovo Only

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-LenovoBloat.ps1' -UseBasicParsing).Content"

ASUS Only

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-ASUSBloat.ps1' -UseBasicParsing).Content"

Dell Only

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Remove-DellBloat.ps1' -UseBasicParsing).Content"

Scan First (See what will be removed)

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Scan-Bloatware.ps1' -UseBasicParsing).Content"

Verify Removal

powershell -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12; Invoke-Expression(Invoke-WebRequest -Uri 'https://git.azuze.fr/kawa/Kawa-s-Bloat-Remover/raw/main/Verify-Removal.ps1' -UseBasicParsing).Content"

Before You Run

  1. Get Admin Rights

    • Right-click PowerShell → "Run as Administrator"
    • Or use Admin: Command Prompt
  2. Backup Important Data (optional but recommended)

    • These scripts don't touch user files, but it's always good practice
  3. Note the Script Location

    • Know the full path to the script file

📊 After Running

Verify it worked:

powershell -ExecutionPolicy Bypass -File "Verify-Removal.ps1"

Expected output:

[+] CLEAN: No bloatware detected
All manufacturer bloatware has been successfully removed.

🔧 Deployment Methods

For IT/Admins: Schedule Task at Startup

# Run as Administrator
powershell -ExecutionPolicy Bypass -File "Deploy-ScheduledTask.ps1" -Trigger Startup

For IT/Admins: Deploy to Multiple PCs

# Run as Administrator
$PCs = "DESKTOP-001", "DESKTOP-002", "DESKTOP-003"
powershell -ExecutionPolicy Bypass -File "Deploy-ToRemote.ps1" -ComputerName $PCs

For Group Policy / SCCM

Use Run-AllBloat.bat as a startup script:

  1. Create a Group Policy object
  2. Computer Configuration → Windows Settings → Scripts → Startup
  3. Add Run-AllBloat.bat as startup script
  4. Deploy to user OUs

Troubleshooting

"Script cannot be loaded because running scripts is disabled"

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser -Force
# Then run your script again

"Access Denied" or "You need admin rights"

  • Make sure PowerShell is running as Administrator
  • Right-click the shortcut → "Run as administrator"

"Cannot find path" to script

  • Make sure you're in the correct directory
  • Use full path: powershell -ExecutionPolicy Bypass -File "C:\full\path\to\Remove-AllBloat.ps1"

Some bloatware still shows up

  • Some items are protected or re-installed by updates
  • Run Deploy-ScheduledTask.ps1 to schedule periodic cleanup
  • Or disable manufacturer update services manually

🔐 Safety & Privacy

What these scripts do:

  • Remove manufacturer bloatware
  • Disable associated services
  • Clean up registry entries
  • Delete installation directories

What these scripts DON'T do:

  • Remove Windows system files
  • Delete user data or documents
  • Disable required drivers
  • Require internet connection
  • Send data anywhere

📞 Support

If scripts fail:

  1. Check you have admin rights

    # Run this in PowerShell - should return "True"
    ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")
    
  2. Run verification to see what's left

    powershell -ExecutionPolicy Bypass -File "Verify-Removal.ps1"
    
  3. Check System Resources

    • Open Task Manager (Ctrl+Shift+Esc)
    • End any bloatware processes manually
    • Then try the script again

🎓 Learning More

  • See README.md for detailed documentation
  • See individual script files for what packages each removes
  • All scripts run with $ErrorActionPreference = 'SilentlyContinue' for silent failures

Last Updated: 2026-07-21
Version: 1.0