Add Satsuma scripts
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# Satsuma uninstaller. Run it with Uninstall.bat.
|
||||
$ErrorActionPreference = 'Continue'
|
||||
|
||||
$root = Join-Path $env:LOCALAPPDATA 'Satsuma'
|
||||
$classes = [Microsoft.Win32.Registry]::CurrentUser.OpenSubKey('Software\Classes\SystemFileAssociations', $true)
|
||||
$removed = 0
|
||||
|
||||
if ($null -ne $classes) {
|
||||
foreach ($name in $classes.GetSubKeyNames()) {
|
||||
$shell = $classes.OpenSubKey($name + '\shell', $true)
|
||||
if ($null -ne $shell) {
|
||||
if ($shell.GetSubKeyNames() -contains 'Satsuma') {
|
||||
try { $shell.DeleteSubKeyTree('Satsuma', $false); $removed++ } catch { }
|
||||
}
|
||||
$shell.Close()
|
||||
}
|
||||
}
|
||||
$classes.Close()
|
||||
}
|
||||
Write-Host ('Removed the right-click menu from ' + $removed + ' file types.')
|
||||
|
||||
$marker = Join-Path $root 'classic-menu.txt'
|
||||
if (Test-Path -LiteralPath $marker) {
|
||||
$a = Read-Host 'Satsuma turned on the classic Windows 11 right-click menu. Put the new Windows 11 menu back? (Y/N)'
|
||||
if ($a -match '^[Yy]') {
|
||||
try {
|
||||
[Microsoft.Win32.Registry]::CurrentUser.DeleteSubKeyTree('Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}', $false)
|
||||
Write-Host 'Done. Sign out and back in (or restart) to see the change.'
|
||||
} catch { }
|
||||
}
|
||||
}
|
||||
|
||||
if (Test-Path -LiteralPath $root) {
|
||||
Remove-Item -LiteralPath $root -Recurse -Force -ErrorAction SilentlyContinue
|
||||
if (Test-Path -LiteralPath $root) {
|
||||
Write-Host 'Some files in the Satsuma folder could not be deleted (they may be in use). Delete this folder by hand:'
|
||||
Write-Host $root
|
||||
} else {
|
||||
Write-Host 'Deleted the Satsuma program folder, including the downloaded tools.'
|
||||
}
|
||||
}
|
||||
Write-Host ''
|
||||
Write-Host 'Satsuma is removed.'
|
||||
Reference in New Issue
Block a user