Files

81 lines
5.5 KiB
Markdown

# Установка MusicBridge для Windows x64
1. Распаковать `MusicBridge-win-x64.zip` целиком.
2. Запустить `Install.cmd`. Права администратора не нужны.
3. Открыть MusicBridge через меню «Пуск».
Пакет содержит .NET Runtime: SDK и отдельная установка .NET не нужны.
Это локальный ZIP-установщик со скриптом, не MSI и не подписанный установщик.
`Install.cmd` разрешает выполнение только запущенного скрипта в этом процессе;
постоянная политика PowerShell не меняется.
Приложение устанавливается в `%LOCALAPPDATA%\Programs\MusicBridge`.
Ярлык запускает `--tray --lan`. Крестик скрывает окно, меню трея завершает агент.
## Автозапуск
В меню значка трея включить «Запускать вместе с Windows». По умолчанию он выключен.
Настройка относится только к текущему пользователю (HKCU Run). Сохраняются путь
исполняемого файла, режим локальной сети и порт текущего запуска. Агент открывается
в трее без главного окна (`--minimized`). Повторное нажатие выключает автозапуск.
Включать его желательно после установки, чтобы путь к приложению был постоянным.
## Обновление и удаление
Перед повторной установкой завершить агент через меню трея. Установщик не
завершает процессы автоматически и не трогает хранилище сопряжения.
Для удаления завершить агент и выполнить:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File "$env:LOCALAPPDATA\Programs\MusicBridge\Uninstall.ps1"
```
Удаляются установленная папка, соответствующий ярлык и запись автозапуска.
Сертификат и доверенные устройства в `%LOCALAPPDATA%\MusicBridge` сохраняются.
Правила брандмауэра установщик не меняет. Для подключения из домашней сети
потребуется разрешённый доступ к TCP-порту агента и UDP 5353 в частной сети.
## Брандмауэр
Установленный `Firewall.ps1` создаёт два входящих правила для конкретного exe:
TCP 8765 (HTTPS/WSS) и UDP 5353 (mDNS). Только профиль Private и адреса
LocalSubnet; Edge Traversal запрещён. Профили сети и чужие правила не меняются.
По умолчанию в доменной или публичной сети эти правила не разрешат подключение.
Если домашний Ethernet имеет доменный профиль, можно явно передать
`-Profile Domain -InterfaceAlias Ethernet`. Для Domain обязательно точное имя
интерфейса; маски и `Any` запрещены. Адреса остаются ограничены LocalSubnet.
Профиль Public не поддерживается. Повторное применение заменяет профиль и
интерфейс собственных правил для этого exe, а не добавляет ещё одну пару правил.
Просмотр без изменений:
```powershell
& "$env:LOCALAPPDATA\Programs\MusicBridge\Firewall.ps1" -Action Preview
```
Применение из PowerShell администратора:
```powershell
& "$env:LOCALAPPDATA\Programs\MusicBridge\Firewall.ps1" -Action Apply
```
Для нестандартной установки указать абсолютный `-ProgramPath` к exe;
для другого порта — `-Port`. `-Action Apply -WhatIf` показывает план без изменений.
Повторное применение обновляет собственные правила этого пути, включая порт.
Скрипт не сужает доступ, который уже разрешён другими правилами Windows.
Перед удалением приложения можно удалить его правила из PowerShell администратора:
```powershell
& "$env:LOCALAPPDATA\Programs\MusicBridge\Firewall.ps1" -Action Remove
```
Удаление правил выполняется отдельно: установщик и деинсталлятор не запрашивают
административные права. Для нестандартной установки передать тот же `-ProgramPath`.
## Для разработчика
Собрать пакет: `powershell -NoProfile -File Packaging/Publish.ps1`.
Результат: `dist/MusicBridge-win-x64.zip`. Для проверки установки в изоляции
можно передать `Install.ps1 -InstallDirectory <пустая тестовая папка> -NoShortcut`.