mirror of
https://github.com/Sycnex/Windows10Debloater.git
synced 2024-11-24 11:45:29 +00:00
Merge branch 'master' into master
This commit is contained in:
commit
cd59634879
@ -579,6 +579,7 @@ Function UninstallOneDrive {
|
||||
|
||||
Write-Host "Uninstalling OneDrive. Please wait..."
|
||||
|
||||
|
||||
New-PSDrive HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
|
||||
$onedrive = "$env:SYSTEMROOT\SysWOW64\OneDriveSetup.exe"
|
||||
$ExplorerReg1 = "HKCR:\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}"
|
||||
@ -587,6 +588,45 @@ Function UninstallOneDrive {
|
||||
Start-Sleep 2
|
||||
If (!(Test-Path $onedrive)) {
|
||||
$onedrive = "$env:SYSTEMROOT\System32\OneDriveSetup.exe"
|
||||
|
||||
New-PSDrive HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
|
||||
$onedrive = "$env:SYSTEMROOT\SysWOW64\OneDriveSetup.exe"
|
||||
$ExplorerReg1 = "HKCR:\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}"
|
||||
$ExplorerReg2 = "HKCR:\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}"
|
||||
Stop-Process -Name "OneDrive*"
|
||||
Start-Sleep 2
|
||||
If (!(Test-Path $onedrive)) {
|
||||
$onedrive = "$env:SYSTEMROOT\System32\OneDriveSetup.exe"
|
||||
}
|
||||
Start-Process $onedrive "/uninstall" -NoNewWindow -Wait
|
||||
Start-Sleep 2
|
||||
Write-Output "Stopping explorer"
|
||||
Start-Sleep 1
|
||||
taskkill.exe /F /IM explorer.exe
|
||||
Start-Sleep 3
|
||||
Write-Output "Removing leftover files"
|
||||
Remove-Item "$env:USERPROFILE\OneDrive" -Force -Recurse
|
||||
Remove-Item "$env:LOCALAPPDATA\Microsoft\OneDrive" -Force -Recurse
|
||||
Remove-Item "$env:PROGRAMDATA\Microsoft OneDrive" -Force -Recurse
|
||||
If (Test-Path "$env:SYSTEMDRIVE\OneDriveTemp") {
|
||||
Remove-Item "$env:SYSTEMDRIVE\OneDriveTemp" -Force -Recurse
|
||||
}
|
||||
Write-Output "Removing OneDrive from windows explorer"
|
||||
If (!(Test-Path $ExplorerReg1)) {
|
||||
New-Item $ExplorerReg1
|
||||
}
|
||||
Set-ItemProperty $ExplorerReg1 System.IsPinnedToNameSpaceTree -Value 0
|
||||
If (!(Test-Path $ExplorerReg2)) {
|
||||
New-Item $ExplorerReg2
|
||||
}
|
||||
Set-ItemProperty $ExplorerReg2 System.IsPinnedToNameSpaceTree -Value 0
|
||||
Write-Output "Restarting Explorer that was shut down before."
|
||||
Start-Process explorer.exe -NoNewWindow
|
||||
|
||||
Write-Host "Enabling the Group Policy 'Prevent the usage of OneDrive for File Storage'."
|
||||
$OneDriveKey = 'HKLM:Software\Policies\Microsoft\Windows\OneDrive'
|
||||
If (!(Test-Path $OneDriveKey)) {
|
||||
Mkdir $OneDriveKey
|
||||
}
|
||||
Start-Process $onedrive "/uninstall" -NoNewWindow -Wait
|
||||
Start-Sleep 2
|
||||
|
@ -25,7 +25,8 @@ Function Begin-SysPrep {
|
||||
#Stop WindowsStore Installer Service and set to Disabled
|
||||
Write-Verbose -Message ('Stopping InstallService')
|
||||
Stop-Service InstallService
|
||||
} #>
|
||||
#>
|
||||
}
|
||||
|
||||
#Creates a PSDrive to be able to access the 'HKCR' tree
|
||||
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
|
||||
@ -36,12 +37,17 @@ Function Start-Debloat {
|
||||
#Removes AppxPackages
|
||||
#Credit to Reddit user /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|`
|
||||
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'
|
||||
Microsoft.MicrosoftStickyNotes|Microsoft.MSPaint|Microsoft.WindowsCamera|.NET|Framework|Microsoft.HEIFImageExtension|Microsoft.ScreenSketch|Microsoft.StorePurchaseApp|`
|
||||
Microsoft.VP9VideoExtensions|Microsoft.WebMediaExtensions|Microsoft.WebpImageExtension|Microsoft.DesktopAppInstaller'
|
||||
Get-AppxPackage -AllUsers | Where-Object {$_.Name -NotMatch $WhitelistedApps} | Remove-AppxPackage -ErrorAction SilentlyContinue
|
||||
# Run this again to avoid error on 1803 or having to reboot.
|
||||
Get-AppxPackage -AllUsers | Where-Object {$_.Name -NotMatch $WhitelistedApps} | Remove-AppxPackage -ErrorAction SilentlyContinue
|
||||
Get-AppxProvisionedPackage -Online | Where-Object {$_.PackageName -NotMatch $WhitelistedApps} | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue
|
||||
$AppxRemoval = Get-AppxProvisionedPackage -Online | Where-Object {$_.PackageName -NotMatch $WhitelistedApps}
|
||||
ForEach ( $App in $AppxRemoval) {
|
||||
|
||||
Remove-AppxProvisionedPackage -Online -PackageName $App.PackageName
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Function Remove-Keys {
|
||||
|
Loading…
Reference in New Issue
Block a user