100 lines
2.5 KiB
PowerShell
100 lines
2.5 KiB
PowerShell
# Remove Dell Bloatware - Silent mode with error suppression
|
|
# Run as Administrator
|
|
|
|
#Requires -RunAsAdministrator
|
|
|
|
$ErrorActionPreference = 'SilentlyContinue'
|
|
$ProgressPreference = 'SilentlyContinue'
|
|
|
|
# Dell Bloatware packages to remove
|
|
$DellApps = @(
|
|
'Dell.*Update',
|
|
'DellSystemDetect',
|
|
'DellClientManagementService',
|
|
'Dell.*Backup',
|
|
'Dell.*Dock',
|
|
'Dell.*Display.*Manager',
|
|
'Dell.*Easy.*Access',
|
|
'Dell.*Foundation.*Services',
|
|
'Dell.*SupportAssist',
|
|
'Dell.*SupportAssistRemediation',
|
|
'Dell.*Optimizer',
|
|
'DellPowerManager',
|
|
'Dell.*Command.*Update',
|
|
'Dell.*KACE',
|
|
'Alienware.*'
|
|
)
|
|
|
|
# Remove via WMI
|
|
foreach ($app in $DellApps) {
|
|
try {
|
|
$installed = Get-WmiObject -Class Win32_Product -Filter "Name LIKE '$app'" -ErrorAction SilentlyContinue
|
|
foreach ($item in $installed) {
|
|
$item.Uninstall() | Out-Null
|
|
}
|
|
} catch { }
|
|
}
|
|
|
|
# Remove via PowerShell App Removal
|
|
foreach ($app in $DellApps) {
|
|
try {
|
|
Get-AppxPackage -Name "*Dell*" -AllUsers -ErrorAction SilentlyContinue | Remove-AppxPackage -AllUsers
|
|
} catch { }
|
|
}
|
|
|
|
# Remove Dell services
|
|
$DellServices = @(
|
|
'DellClientManagementService',
|
|
'DellSystemDetect',
|
|
'DSAService',
|
|
'DellDataTransport',
|
|
'DellSSDMonitor',
|
|
'DellPowerManagementService'
|
|
)
|
|
|
|
foreach ($service in $DellServices) {
|
|
try {
|
|
$svc = Get-Service -Name $service -ErrorAction SilentlyContinue
|
|
if ($svc) {
|
|
Stop-Service -Name $service -Force
|
|
Set-Service -Name $service -StartupType Disabled
|
|
}
|
|
} catch { }
|
|
}
|
|
|
|
# Remove Dell scheduled tasks
|
|
try {
|
|
Get-ScheduledTask -TaskPath "*Dell*" -ErrorAction SilentlyContinue | Unregister-ScheduledTask -Confirm:$false
|
|
} catch { }
|
|
|
|
# Remove from Registry
|
|
try {
|
|
$DellRegPaths = @(
|
|
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*Dell*',
|
|
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\*Dell*',
|
|
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\*Dell*'
|
|
)
|
|
|
|
foreach ($path in $DellRegPaths) {
|
|
Remove-Item -Path $path -Force -Recurse
|
|
}
|
|
} catch { }
|
|
|
|
# Remove Dell installation directories
|
|
$DellDirs = @(
|
|
'C:\Program Files\Dell',
|
|
'C:\Program Files (x86)\Dell',
|
|
'C:\ProgramData\Dell',
|
|
'C:\ProgramData\SupportAssist'
|
|
)
|
|
|
|
foreach ($dir in $DellDirs) {
|
|
try {
|
|
if (Test-Path $dir) {
|
|
Remove-Item -Path $dir -Recurse -Force
|
|
}
|
|
} catch { }
|
|
}
|
|
|
|
Write-Host "Dell bloatware removal complete." -ForegroundColor Green
|