49 lines
2.0 KiB
PowerShell
49 lines
2.0 KiB
PowerShell
# ==========================================
|
||
# 🗑️ UNINSTALL ALL (CLEANUP)
|
||
# ==========================================
|
||
|
||
$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
|
||
. "$ScriptDir\lib\Common.ps1"
|
||
. "$ScriptDir\lib\System.ps1"
|
||
|
||
Write-Header "ПОЛНОЕ УДАЛЕНИЕ"
|
||
|
||
Ensure-Admin
|
||
|
||
Write-Warning "Это действие удалит весь установленный софт:"
|
||
Write-Host " - Sing-box (Служба и файлы)" -ForegroundColor Gray
|
||
Write-Host " - ProxiFyre (Служба и файлы)" -ForegroundColor Gray
|
||
Write-Host " - Драйвер WinPacketFilter" -ForegroundColor Gray
|
||
Write-Host ""
|
||
|
||
if ((Read-Host "Вы уверены? (y/n)") -ne 'y') { exit }
|
||
|
||
Write-Step "Удаление Sing-box..."
|
||
Manage-ScheduledTask -Name "SingBoxProxy" -Action "Stop"
|
||
Manage-ScheduledTask -Name "SingBoxProxy" -Action "Uninstall"
|
||
|
||
if (Test-Path "C:\Tools\sing-box") {
|
||
Remove-Item "C:\Tools\sing-box" -Recurse -Force -ErrorAction SilentlyContinue
|
||
Write-Success "Файлы удалены"
|
||
}
|
||
|
||
Write-Step "Удаление Discrod Proxy (ProxiFyre)..."
|
||
$pfDir = "C:\Tools\ProxiFyre"
|
||
if (Test-Path "$pfDir\ProxiFyre.exe") {
|
||
Start-Process "$pfDir\ProxiFyre.exe" -ArgumentList "uninstall" -Wait -NoNewWindow
|
||
Start-Sleep -Seconds 2
|
||
}
|
||
|
||
if (Test-Path $pfDir) {
|
||
Remove-Item $pfDir -Recurse -Force -ErrorAction SilentlyContinue
|
||
Write-Success "Файлы удалены"
|
||
}
|
||
|
||
Write-Step "Удаление драйвера..."
|
||
# Тут сложно удалить MSI тихо без GUID, но попробуем через known path или пропустим, т.к. драйвер может быть нужен другим
|
||
Write-Info "Драйвер WinPacketFilter оставлен (он может использоваться другим ПО)."
|
||
Write-Info "Если нужно, удалите его через 'Установка и удаление программ'."
|
||
|
||
Write-Success "Очистка завершена!"
|
||
Start-Sleep -Seconds 3
|