4.1 KiB
Установщик Inv_web Client v2 для Windows
Установщик поддерживает три режима:
- Автоматический с RustDesk — устанавливает клиент и RustDesk без задания собственного сервера. Фиксированный пароль можно задать или оставить пустым.
- Ручной с сервером RustDesk — устанавливает клиент и RustDesk, запрашивает
Сервер ID,Ретранслятор, публичныйKeyи необязательный фиксированный пароль. - Без RustDesk — устанавливает только клиент Inv_web и не изменяет уже установленный RustDesk.
Во всех режимах установщик также запрашивает:
- адрес сервера;
- токен клиента.
После установки параметры передаются клиенту и сохраняются в:
%APPDATA%\InvWebClientAgentV2\config.json
Требования для сборки
- Windows 10/11 x64;
- классический CPython 3.13 x64 с Tcl/Tk;
- Inno Setup 6.
- официальный установщик RustDesk для Windows x64.
Перед сборкой переименуйте установщик RustDesk в rustdesk.exe и положите его в:
installer\prerequisites\rustdesk.exe
Минимальный runtime из нового Python Install Manager не подходит для сборки, поскольку не содержит Tcl/Tk. BAT-файл проверяет не только версию Python, но и наличие рабочих файлов Tcl/Tk. Если подходящий CPython 3.13 не найден, сценарий:
- пытается установить
Python.Python.3.13черезwinget; - повторно проверяет Tcl/Tk;
- если подходящий Python всё ещё не найден, скачивает официальный полный
установщик CPython 3.13.15 x64,
проверяет его SHA-256 и тихо устанавливает для текущего пользователя с
компонентами Tcl/Tk и
pip.
Для резервной загрузки требуется доступ к python.org. Добавлять Python в
PATH и удалять уже установленные версии не требуется.
Сборка
Запустите:
build_client_agent_v2_installer_windows.bat
Готовый установщик:
dist\Inv_web_Client_Setup.exe
При сборке клиент формируется в формате onedir и целиком включается в Inno
Setup. Это исключает распаковку Tcl/Tk во временный каталог _MEI... при запуске.
Сценарий сборки отдельно проверяет наличие _tcl_data\init.tcl и
_tk_data\tk.tcl, а затем запускает клиент с --help как smoke-тест. Поэтому
установщик не будет создан с неполным или не запускающимся Tkinter.
Для тихой установки и настройки службы RustDesk мастер запрашивает права администратора. Клиент устанавливается в каталог:
%LOCALAPPDATA%\Programs\Inv_web Client
Сценарий настройки проверяет, что адрес ID-сервера, ретранслятор и ключ были фактически сохранены RustDesk, после чего перезапускает его службу. Диагностический журнал установки RustDesk сохраняется здесь:
%ProgramData%\Inv_web Client\rustdesk-install.log