Files
black-screen/README.md
T

43 lines
2.5 KiB
Markdown

# Black Screen Dim
Маленькая утилита для Windows: при запуске гасит экран до чёрного (яркость → 0),
показывает чёрный безрамочный полноэкран, скрывает курсор. По `ESC` — выход,
яркость и курсор возвращаются.
## Запуск из исходников (Windows)
```bat
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
python black_screen_dim.py
```
## Сборка в .exe
```bat
pip install pyinstaller
pyinstaller "Black Screen Dim.spec"
```
Готовый exe — в `dist\Black Screen Dim\`.
## Зависимости
- Яркость — **гибрид**: сначала быстрый нативный DDC/CI (`dxva2.dll`, суб-миллисекунды),
при отсутствии DDC/CI на мониторе (например, встроенный экран ноутбука) — откат на
`screen-brightness-control` (WMI) для этого монитора.
- чёрная заливка экрана — напрямую через Win32 API (ctypes, входит в стандартную библиотеку), pygame больше не нужен
- лог пишется в `%TEMP%\black_screen_dim.log`
> Управление яркостью работает только на Windows. На других ОС приложение
> просто покажет чёрный экран без изменения яркости.
> При нескольких мониторах чёрный экран накрывает **весь виртуальный рабочий стол**
> (все мониторы сразу, включая те, что слева/сверху от основного), а яркость
> гасится и восстанавливается **на каждом** мониторе по отдельности.
## Откат на WMI-только версию
Если гибридная яркость работает некорректно, есть два варианта вернуться к
проверенной версии (только WMI):
- **Быстрый (на ноуте):** переименуй `black_screen_dim.py.bak` обратно в `black_screen_dim.py`
и пересобери exe.
- **Через git:** `git -C <repo> checkout v1-wmi-only -- black_screen_dim.py`
(тег `v1-wmi-only` указывает на последний стабильный коммит до гибрида).