feat: Добавлены скрипты для работы с сетью, системными утилитами и настройки Discord.

This commit is contained in:
2025-12-30 21:08:02 +03:00
parent 99bb23201b
commit d7a3b20da9
3 changed files with 96 additions and 1 deletions

View File

@@ -76,6 +76,12 @@ function Get-CurrentConfig {
}
function Install-ProxiFyre {
# 0. Остановка старых процессов (чтобы файлы не были заблокированы)
Write-Step "Остановка старых процессов..."
Stop-Service "ProxiFyreService" -Force -ErrorAction SilentlyContinue
Stop-Process -Name "ProxiFyre" -Force -ErrorAction SilentlyContinue
Start-Sleep -Seconds 2
# Установка драйвера
Write-Step "Установка драйвера..."
$msi = "$env:TEMP\WinpkFilter.msi"
@@ -126,7 +132,54 @@ function Configure-And-Start {
& "$InstallPath\ProxiFyre.exe" start 2>&1 | Out-Null
}
Write-Success "Готово! Discord должен работать через прокси."
# Мониторинг запуска (10 сек)
Write-Info "Проверка стабильности запуска (10 сек)..."
$lastLogSize = 0
$logFile = $null
for ($i = 1; $i -le 10; $i++) {
Start-Sleep -Seconds 1
# 1. Ищем файл логов (если еще не нашли)
if (-not $logFile) {
$logFile = Get-ChildItem "$InstallPath\*.log" -ErrorAction SilentlyContinue | Sort-Object LastWriteTime | Select-Object -Last 1
}
# 2. Выводим новые строки лога
if ($logFile) {
try {
$stream = [System.IO.File]::Open($logFile.FullName, 'Open', 'Read', 'ReadWrite')
if ($stream.Length -gt $lastLogSize) {
$stream.Seek($lastLogSize, 'Begin') | Out-Null
$reader = New-Object System.IO.StreamReader($stream)
$content = $reader.ReadToEnd()
$newPos = $stream.Position # Сохраняем позицию
$reader.Dispose() # Закрывает поток
$lastLogSize = $newPos
if (-not [string]::IsNullOrWhiteSpace($content)) {
$content -split "`r`n" | Where-Object { -not [string]::IsNullOrWhiteSpace($_) } | ForEach-Object {
Write-Host " LOG: $_" -ForegroundColor DarkGray
}
}
}
else {
$stream.Dispose()
}
}
catch {}
}
# 3. Проверяем статус службы
$svc = Get-Service -Name "ProxiFyreService" -ErrorAction SilentlyContinue
if ($svc.Status -ne 'Running') {
Write-Error "Служба упала при запуске! (Код 1064 или другая ошибка)"
Write-Host " Попробуйте запустить вручную для диагностики." -ForegroundColor Gray
return
}
}
Write-Success "Готово! Служба стабильна."
}
function Select-Apps {
@@ -258,6 +311,7 @@ if ($isInstalled -and $currentConfig -and -not $Force) {
# --- НОВАЯ УСТАНОВКА ---
if (-not $isInstalled -or $Force) {
Ensure-VCRedist
Install-ProxiFyre
}