feat: Реализована нативная установка sing-box с системными утилитами и веб-сервером, заменяя устаревшие скрипты.
This commit is contained in:
48
scripts/uninstall-all.ps1
Normal file
48
scripts/uninstall-all.ps1
Normal file
@@ -0,0 +1,48 @@
|
||||
# ==========================================
|
||||
# 🗑️ 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
|
||||
Reference in New Issue
Block a user