mirror of
https://github.com/Sycnex/Windows10Debloater.git
synced 2024-11-24 11:45:29 +00:00
Fixed Optimization to skip NonRemovable apps that were always attempted
NonRemovable apps were still getting attempted in the debloat all functions that were always throwing errors that were just hanging on initalizing floating above the powershell window running. Fixed Prompt position after the .NET prompt that wouldn't show the Do you want to power down Prompt Fixed the Write-Host saying you didn't want to remove one drive after selecting 'no' to not unpin tiles.
This commit is contained in:
parent
83fd597a00
commit
f269dbbee3
@ -39,9 +39,15 @@ Function DebloatAll {
|
||||
$WhitelistedApps = 'Microsoft.ScreenSketch|Microsoft.Paint3D|Microsoft.WindowsCalculator|Microsoft.WindowsStore|Microsoft.Windows.Photos|CanonicalGroupLimited.UbuntuonWindows|`
|
||||
Microsoft.XboxGameCallableUI|Microsoft.XboxGamingOverlay|Microsoft.Xbox.TCUI|Microsoft.XboxGamingOverlay|Microsoft.XboxIdentityProvider|Microsoft.MicrosoftStickyNotes|Microsoft.MSPaint|Microsoft.WindowsCamera|.NET|Framework|`
|
||||
Microsoft.HEIFImageExtension|Microsoft.ScreenSketch|Microsoft.StorePurchaseApp|Microsoft.VP9VideoExtensions|Microsoft.WebMediaExtensions|Microsoft.WebpImageExtension|Microsoft.DesktopAppInstaller|WindSynthBerry|MIDIBerry|Slack'
|
||||
Get-AppxPackage -AllUsers | Where-Object {$_.Name -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxPackage
|
||||
Get-AppxPackage | Where-Object {$_.Name -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxPackage
|
||||
Get-AppxProvisionedPackage -Online | Where-Object {$_.PackageName -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxProvisionedPackage -Online
|
||||
#NonRemovable Apps that where getting attempted and the system would reject the uninstall, speeds up debloat and prevents 'initalizing' overlay when removing apps
|
||||
$NonRemovable = '1527c705-839a-4832-9118-54d4Bd6a0c89|c5e2524a-ea46-4f67-841f-6a9465d9d515|E2A4F912-2574-4A75-9BB0-0D023378592B|F46D4000-FD22-4DB4-AC8E-4E1DDDE828FE|InputApp|Microsoft.AAD.BrokerPlugin|Microsoft.AccountsControl|`
|
||||
Microsoft.BioEnrollment|Microsoft.CredDialogHost|Microsoft.ECApp|Microsoft.LockApp|Microsoft.MicrosoftEdgeDevToolsClient|Microsoft.MicrosoftEdge|Microsoft.PPIProjection|Microsoft.Win32WebViewHost|Microsoft.Windows.Apprep.ChxApp|`
|
||||
Microsoft.Windows.AssignedAccessLockApp|Microsoft.Windows.CapturePicker|Microsoft.Windows.CloudExperienceHost|Microsoft.Windows.ContentDeliveryManager|Microsoft.Windows.Cortana|Microsoft.Windows.NarratorQuickStart|`
|
||||
Microsoft.Windows.ParentalControls|Microsoft.Windows.PeopleExperienceHost|Microsoft.Windows.PinningConfirmationDialog|Microsoft.Windows.SecHealthUI|Microsoft.Windows.SecureAssessmentBrowser|Microsoft.Windows.ShellExperienceHost|`
|
||||
Microsoft.Windows.XGpuEjectDialog|Microsoft.XboxGameCallableUI|Windows.CBSPreview|windows.immersivecontrolpanel|Windows.PrintDialog|Microsoft.VCLibs.140.00|Microsoft.Services.Store.Engagement|Microsoft.UI.Xaml.2.0'
|
||||
Get-AppxPackage -AllUsers | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxPackage
|
||||
Get-AppxPackage | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxPackage
|
||||
Get-AppxProvisionedPackage -Online | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxProvisionedPackage -Online
|
||||
}
|
||||
|
||||
Function DebloatBlacklist {
|
||||
@ -676,7 +682,7 @@ $Prompt1 = [Windows.MessageBox]::Show($Ask, "Debloat or Revert", $Button, $Error
|
||||
Switch ($Prompt1) {
|
||||
#This will debloat Windows 10
|
||||
Yes {
|
||||
|
||||
#Everything is specific prompt
|
||||
$Prompt2 = [Windows.MessageBox]::Show($EverythingorSpecific, "Everything or Specific", $Button, $Warn)
|
||||
switch ($Prompt2) {
|
||||
Yes {
|
||||
@ -751,7 +757,7 @@ Switch ($Prompt1) {
|
||||
Start-Sleep 1
|
||||
}
|
||||
}
|
||||
|
||||
#Disabling EdgePDF prompt
|
||||
$Prompt3 = [Windows.MessageBox]::Show($EdgePdf, "Edge PDF", $Button, $Warn)
|
||||
Switch ($Prompt3) {
|
||||
Yes {
|
||||
@ -773,7 +779,7 @@ Switch ($Prompt1) {
|
||||
Write-Host "You have chosen to skip removing OneDrive from your machine."
|
||||
}
|
||||
}
|
||||
#Prompt asking if you'd like to unpin all start items
|
||||
#Prompt asking if you'd like to unpin all start items
|
||||
$Prompt5 = [Windows.MessageBox]::Show($Unpin, "Unpin", $Button, $ErrorIco)
|
||||
Switch ($Prompt5) {
|
||||
Yes {
|
||||
@ -781,31 +787,31 @@ Switch ($Prompt1) {
|
||||
Write-Host "Start Apps unpined."
|
||||
}
|
||||
No {
|
||||
Write-Host "You have chosen to skip removing OneDrive from your machine."
|
||||
Write-Host "Apps will remain pinned to the start menu."
|
||||
|
||||
}
|
||||
}
|
||||
#Prompt asking if you want to install .NET
|
||||
$Prompt6 = [Windows.MessageBox]::Show($InstallNET, "Install .Net", $Button, $Warn)
|
||||
Switch ($Prompt6) {
|
||||
Yes {
|
||||
Write-Host "Initializing the installation of .NET 3.5..."
|
||||
Try {
|
||||
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
|
||||
Write-Host ".NET 3.5 has been successfully installed!" }
|
||||
Catch {
|
||||
$_
|
||||
Write-Host ".NET 3.5 has been successfully installed!"
|
||||
}
|
||||
No {
|
||||
Write-Host "Skipping .NET install."
|
||||
}
|
||||
}
|
||||
}
|
||||
#Prompt asking if you'd like to reboot your machine
|
||||
$Prompt7 = [Windows.MessageBox]::Show($Reboot, "Reboot", $Button, $Warn)
|
||||
$Prompt7 = [Windows.MessageBox]::Show($Reboot, "Reboot", $Button, $Warn)
|
||||
Switch ($Prompt7) {
|
||||
Yes {
|
||||
Write-Host "Unloading the HKCR drive..."
|
||||
Remove-PSDrive HKCR
|
||||
Start-Sleep 1
|
||||
Stop-Transcript
|
||||
Write-Host "Initiating reboot."
|
||||
Stop-Transcript
|
||||
Start-Sleep 2
|
||||
Restart-Computer
|
||||
}
|
||||
@ -813,13 +819,15 @@ Switch ($Prompt1) {
|
||||
Write-Host "Unloading the HKCR drive..."
|
||||
Remove-PSDrive HKCR
|
||||
Start-Sleep 1
|
||||
Stop-Transcript
|
||||
Write-Host "Script has finished. Exiting."
|
||||
Stop-Transcript
|
||||
Start-Sleep 2
|
||||
Exit
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
No {
|
||||
Write-Host "Reverting changes..."
|
||||
Write-Host "Creating PSDrive 'HKCR' (HKEY_CLASSES_ROOT). This will be used for the duration of the script as it is necessary for the modification of specific registry keys."
|
||||
@ -859,4 +867,3 @@ Switch ($Prompt1) {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -297,16 +297,21 @@ $RemoveAllBloatware.Add_Click( {
|
||||
}
|
||||
|
||||
Function DebloatAll {
|
||||
|
||||
#Removes AppxPackages
|
||||
#Credit to /u/GavinEke for a modified version of my whitelist code
|
||||
[regex]$WhitelistedApps = 'Microsoft.ScreenSketch|Microsoft.Paint3D|Microsoft.WindowsCalculator|Microsoft.WindowsStore|Microsoft.Windows.Photos|CanonicalGroupLimited.UbuntuonWindows|`
|
||||
$WhitelistedApps = 'Microsoft.ScreenSketch|Microsoft.Paint3D|Microsoft.WindowsCalculator|Microsoft.WindowsStore|Microsoft.Windows.Photos|CanonicalGroupLimited.UbuntuonWindows|`
|
||||
Microsoft.XboxGameCallableUI|Microsoft.XboxGamingOverlay|Microsoft.Xbox.TCUI|Microsoft.XboxGamingOverlay|Microsoft.XboxIdentityProvider|Microsoft.MicrosoftStickyNotes|Microsoft.MSPaint|Microsoft.WindowsCamera|.NET|Framework|`
|
||||
Microsoft.HEIFImageExtension|Microsoft.ScreenSketch|Microsoft.StorePurchaseApp|Microsoft.VP9VideoExtensions|Microsoft.WebMediaExtensions|Microsoft.WebpImageExtension|Microsoft.DesktopAppInstaller|WindSynthBerry|MIDIBerry|Slack'
|
||||
Get-AppxPackage -AllUsers | Where-Object {$_.Name -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxPackage
|
||||
Get-AppxPackage | Where-Object {$_.Name -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxPackage
|
||||
Get-AppxProvisionedPackage -Online | Where-Object {$_.PackageName -NotMatch $WhitelistedApps -and $_.NonRemovable -eq "False"} | Remove-AppxProvisionedPackage -Online
|
||||
}
|
||||
#NonRemovable Apps that where getting attempted and the system would reject the uninstall, speeds up debloat and prevents 'initalizing' overlay when removing apps
|
||||
$NonRemovable = '1527c705-839a-4832-9118-54d4Bd6a0c89|c5e2524a-ea46-4f67-841f-6a9465d9d515|E2A4F912-2574-4A75-9BB0-0D023378592B|F46D4000-FD22-4DB4-AC8E-4E1DDDE828FE|InputApp|Microsoft.AAD.BrokerPlugin|Microsoft.AccountsControl|`
|
||||
Microsoft.BioEnrollment|Microsoft.CredDialogHost|Microsoft.ECApp|Microsoft.LockApp|Microsoft.MicrosoftEdgeDevToolsClient|Microsoft.MicrosoftEdge|Microsoft.PPIProjection|Microsoft.Win32WebViewHost|Microsoft.Windows.Apprep.ChxApp|`
|
||||
Microsoft.Windows.AssignedAccessLockApp|Microsoft.Windows.CapturePicker|Microsoft.Windows.CloudExperienceHost|Microsoft.Windows.ContentDeliveryManager|Microsoft.Windows.Cortana|Microsoft.Windows.NarratorQuickStart|`
|
||||
Microsoft.Windows.ParentalControls|Microsoft.Windows.PeopleExperienceHost|Microsoft.Windows.PinningConfirmationDialog|Microsoft.Windows.SecHealthUI|Microsoft.Windows.SecureAssessmentBrowser|Microsoft.Windows.ShellExperienceHost|`
|
||||
Microsoft.Windows.XGpuEjectDialog|Microsoft.XboxGameCallableUI|Windows.CBSPreview|windows.immersivecontrolpanel|Windows.PrintDialog|Microsoft.VCLibs.140.00|Microsoft.Services.Store.Engagement|Microsoft.UI.Xaml.2.0'
|
||||
Get-AppxPackage -AllUsers | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxPackage
|
||||
Get-AppxPackage | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxPackage
|
||||
Get-AppxProvisionedPackage -Online | Where {$_.Name -NotMatch $WhitelistedApps -and $_.Name -NotMatch $NonRemovable} | Remove-AppxProvisionedPackage -Online
|
||||
}
|
||||
|
||||
#Creates a PSDrive to be able to access the 'HKCR' tree
|
||||
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
|
||||
|
Loading…
Reference in New Issue
Block a user