From 383a45ed47ecbefaac4598601c04367cf830a202 Mon Sep 17 00:00:00 2001 From: evgeny Date: Sun, 16 Aug 2026 23:23:52 +0300 Subject: [PATCH] =?UTF-8?q?chatgui:=20setup=5Ffirewall.bat=20=E2=80=94=20?= =?UTF-8?q?=D1=80=D0=B0=D0=B7=D1=80=D0=B5=D1=88=D0=B8=D1=82=D1=8C=20=D0=B2?= =?UTF-8?q?=D1=85=D0=BE=D0=B4=D1=8F=D1=89=D0=B8=D0=B5=20=D0=B2=20Windows?= =?UTF-8?q?=20Firewall=20=D0=B4=D0=BB=D1=8F=20vibechat.exe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Отдельный self-elevating скрипт: добавляет program-правило (dir=in action=allow profile=any) для vibechat.exe, копируется в build-каталог рядом с exe. --- tools/chatgui/build.sh | 1 + tools/chatgui/setup_firewall.bat | 33 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 tools/chatgui/setup_firewall.bat diff --git a/tools/chatgui/build.sh b/tools/chatgui/build.sh index 3d516dfb..34ac9301 100755 --- a/tools/chatgui/build.sh +++ b/tools/chatgui/build.sh @@ -79,6 +79,7 @@ for d in /ucrt64/share/qt5/plugins /ucrt64/lib/qt5/plugins; do cp "$d/platforms/qwindows.dll" "$BUILD_DIR/platforms/" 2>/dev/null && break done cp "$SRC_DIR/rlottie_build/librlottie.dll" "$BUILD_DIR/" 2>/dev/null && log " OK: librlottie.dll" || log " WARN: librlottie.dll not found" +cp "$SRC_DIR/setup_firewall.bat" "$BUILD_DIR/" 2>/dev/null && log " OK: setup_firewall.bat" || log " WARN: setup_firewall.bat not found" log "" log "[4/4] Verifying..." diff --git a/tools/chatgui/setup_firewall.bat b/tools/chatgui/setup_firewall.bat new file mode 100644 index 00000000..27041c99 --- /dev/null +++ b/tools/chatgui/setup_firewall.bat @@ -0,0 +1,33 @@ +@echo off +setlocal EnableExtensions + +rem ── Проверка прав администратора ── +net session >nul 2>&1 +if %errorlevel% neq 0 ( + echo Требуются права администратора. Запрос UAC... + powershell -NoProfile -Command "Start-Process -FilePath '%~f0' -Verb RunAs" + exit /b %errorlevel% +) + +rem ── Каталог скрипта = каталог vibechat.exe ── +cd /d "%~dp0" + +set "EXE=%~dp0vibechat.exe" +if not exist "%EXE%" ( + echo [ОШИБКА] Не найден: %EXE% + echo Запустите скрипт из папки с vibechat.exe + pause + exit /b 1 +) + +rem ── Идемпотентно: удалить старое правило, добавить новое ── +netsh advfirewall firewall delete rule name="vibechat" >nul 2>&1 +netsh advfirewall firewall add rule name="vibechat" dir=in action=allow program="%EXE%" enable=yes profile=any + +if %errorlevel% equ 0 ( + echo [OK] Правило "vibechat" добавлено: входящие подключения разрешены. + echo %EXE% +) else ( + echo [ОШИБКА] Не удалось добавить правило (код %errorlevel%). +) +pause