Implement autostart functionality, ZIP packaging, and related installation scripts; update documentation and tests

This commit is contained in:
2026-09-09 18:27:32 +03:00
parent 49d10a5242
commit 369c0347a7
18 changed files with 368 additions and 13 deletions
+20 -2
View File
@@ -83,7 +83,9 @@ Windows Core Audio → системная громкость устройств
- [x] Трей и окно управления (`--tray`): медиакнопки, ползунки, QR, доверенные устройства.
- [x] Закрытие окна скрывает его; двойной щелчок по значку восстанавливает;
отдельный пункт меню завершает агент. Консоль остаётся отдельным режимом.
- [ ] Автозапуск и установщик (трей реализован, общий пункт выше ещё не завершён).
- [x] Автозапуск текущего пользователя через меню трея; скрытый старт `--minimized`.
- [x] Самостоятельный Windows x64 пакет со встроенными Runtime, ZIP-установка,
ярлык в меню Пуск и скрипт удаления. Это не MSI и не подписанный установщик.
### 4. Нативное приложение iPhone — отложено пользователем
@@ -112,6 +114,18 @@ Windows Core Audio → системная громкость устройств
2026-09-09:
- Последний этап — автозапуск и упаковка: **107 проверок прошло** с
`-c Packaging --no-build -- --desktop-smoke --qr-window-smoke --mdns-smoke --live-read`.
Проверены запись/удаление тестовой записи автозапуска и скрытый старт окна.
Тестовая конфигурация Packaging использована, потому что Release exe занят
работающим агентом; его не останавливали. Сборка тестов без ошибок/предупреждений.
- Собран `dist/MusicBridge-win-x64.zip` (~65 МиБ), Release win-x64 self-contained.
`Packaging/Test-Package.ps1` проверил установку в отдельную папку без ярлыка,
запуск со встроенным Runtime, повторную установку, запрет обновления занятого
exe и удаление. Рабочий автозапуск и хранилище пользователя не менялись.
Перезагрузка Windows и реальное срабатывание автозапуска при входе ещё не проверены.
Инструкции — в `INSTALL.md`.
- Последний этап — окно управления и трей: **102 проверки прошли**, Release-сборка
без ошибок/предупреждений. Прогон с `--desktop-smoke --qr-window-smoke --mdns-smoke --live-read`.
В скрытом окне проверены включение/отключение кнопок, отправка play/pause и
@@ -180,7 +194,8 @@ Windows Core Audio → системная громкость устройств
объявляется на домашних IPv4-адаптерах с multicast. Автоизменения брандмауэра нет.
Следующий шаг: проверка с другого устройства и устойчивости при смене сети,
автозапуск/упаковка. Трей уже реализован. iPhone-клиент пока не начинать.
проверка входа Windows с автозапуском и подготовка правил частного брандмауэра.
Трей, автозапуск и ZIP-упаковка реализованы. iPhone-клиент пока не начинать.
Точные границы реализации и следующие шаги — в `CONNECTION-ROADMAP.md`.
Начать разработку iOS только после новой команды пользователя.
@@ -204,6 +219,9 @@ Windows Core Audio → системная громкость устройств
- `PairingWindowHost.cs`: окно QR на отдельном STA-потоке, выбор адреса и обновления.
- `Desktop/AgentWindow.cs`: окно управления, ползунки и доверенные устройства.
- `Desktop/DesktopHost.cs`: STA-поток, значок/меню трея и жизненный цикл окна.
- `Desktop/StartupSettings.cs`: HKCU Run, экранированная команда автозапуска.
- `Packaging/`: сборка standalone ZIP, установка/удаление и изолированный smoke-тест.
- `INSTALL.md`: установка, автозапуск, обновление и удаление.
- `Network/LocalAddresses.cs`: подходящие домашние IPv4-адреса.
- `Network/DiscoveryDescriptor.cs`: публичные поля DNS-SD.
- `Network/MdnsPublisher.cs`: объявления mDNS, обновления адресов и goodbye.