Параметры командной строки BatteryMode
Внимание: Battery Mode должен быть запущен перед выполнением нижеперечисленных команд
BatteryMode*.exe [-Help] [-?] [/?] [-Next] [-Economy] [-Typical] [-Performance] [-GetBrightness] [-SetBrightness "<UniqueString>" [level] <Value>]
- -Help, -?, /? - Получение справки
- -Next - Циклическое переключение схем электропитания, включая пользовательские
- -Economy - Переключение на схему «Экономия энергии», если она доступна
- -Typical - Переключение на схему «Сбалансированный», если она доступна
- -Performance - Переключение на схему «Высокая производительность», если она доступна
-
-GetBrightness - Получение списка мониторов, управление яркостью которых включено в Battery Mode.
Ответное сообщение имеет формат:- <N>. <Name>: "<UniqueString>"
- Levels: <Level>:<Brightness>, ..., <Level>:<Brightness>
- Current level: <CurrentLevel>
- <N> - Номер монитора. Может быть не отсортированым
- <Name> - Название монитора. Отображается в контекстном меню «Управлять яркостью мониторов»
- <UniqueString> - Уникальная строка монитора. Обязатено заключается в двойные кавычки.
Пример внешнего монитора: "Dell U2312HM (Digital - DVI); T=1; LI=0; PI=0".
Пример внутреннего монитора: "DISPLAY\LGD0290\4&205f4e7&0&UID67568640_0; T=0" - <Level>:<Brightness> - Соответствие уровня яркости и его значения.
Пример: Levels: 0:0, 1:10, 2:20, 3:30, 4:40, 5:50, 6:60, 7:70, 8:80, 9:90, 10:100.
Рекомендуется использовать для настройки именно уровни, т.к. мониторы не поддерживают значения яркости между уровнемями.
Значения уровней могут быть распределены не равномерно, а, например, логорифмически - <CurrentLevel> - Текущий уровень яркости
-
-SetBrightness - Установка яркости монитра, управление которым включено в Battery Mode.
Команда имеет формат:- -SetBrightness "<UniqueString>" [level] <Value>
-
"<UniqueString>" - Уникальная строка монитора. Обязатено заключается в двойные кавычки.
Должна быть получена командой -GetBrightness -
[level] - Способ регулировки яркости. Если этот параметр присутствует, то значение этой команды рассматривается как номер уровня яркости, иначе как значение.
Значения яркости округляются до ближайщего уровня в меньшую сторону - <Value> - Значение уровня яркости или яркости
Пример: измененяем яркость внутреннего монитора на уровень 3
BatteryMode64.exe -SetBrightness "DISPLAY\LGD0290\4&205f4e7&0&UID67568640_0; T=0" level 3
Пример: измененяем яркость внешнего монитора на 30 процентов
BatteryMode64.exe -SetBrightness "Dell U2312HM (Digital - DVI); T=1; LI=0; PI=0" 30
Управление Battery Mode через внешний Pipe канал (Возможны изменения!)
Адрес канала: \\.\pipe\BatteryModeCmdPipe
Тип доступа: PIPE_ACCESS_DUPLEX
Тип канала: PIPE_TYPE_MESSAGE
Односторонний обмен:
CreateFile ->
WriteFile ->
CloseHandle
Двусторонний обмен:
CreateFile ->
SetNamedPipeHandleState ->
TransactNamedPipe ->
ReadFile ->
CloseHandle
Доступные типы команд:
enum {
} CommandType
Общий формат команды: <CommandType>#<CommandBody>
Разделитель заголовка: "#"
-
actChangeScheme - Переключение схемы электропитания.
Формат команды: actChangeScheme#Next|Economy|Typical|Performance|Custom[@:<GUID>]
Разделитель значений: "@:"
Пример: 1#Custom@:{1D088A88-A9FE-462D-AB91-1FA87949C668}
-
actSetBrightness - Изменение яркости монитора.
Формат команды: actSetBrightness#<UniqueString>@:Level|Brightness@:<Value>
Разделитель значений: "@:"
Пример: 2#Dell U2312HM (Digital - DVI); T=1; LI=0; PI=0@:Level@:3
-
actGetBrightnessMonitors - Запрос на формирование списка мониторов, управление яркостью которых включено в Battery Mode
Формат команды: actGetBrightnessMonitors#GetBrightnessMonitors
Пример: 3#GetBrightnessMonitors
-
actBrightnessMonitors - Ответная команда на actGetBrightnessMonitors. Содержит список с описанием мониторов.
Формат команды: actBrightnessMonitors#<UniqueString>@:<Description>@:<Level>,...,<Level>@:<CurrentLevel>@;<UniqueString>...
Разделитель мониторов: "@;"
Разделитель значений: "@:"
Разделитель уровней: ","
Пример: 4#Dell U2312HM (Digital - DVI); T=1; LI=0; PI=0@:Dell U2312HM (Digital - DVI)@:
0,1,2,3,<...>,98,99,100@:30@;
DISPLAY\LGD0290\4&205f4e7&0&UID67568640_0; T=0@:Generic PnP Monitor@:
0,10,20,30,40,50,60,70,80,90,100@:3