так как вы спрашиваете о Super User вместо переполнения стека, я сосредоточусь на скриптовом (реестре) способе сделать это.
параметры питания доступны в реестре в следующем разделе:
HKLM\CurrentControlSet\Control\Power
на User\PowerSchemes
подраздел имеет запись ActivePowerScheme
который - как вы могли догадаться-содержит идентификатор текущей схемы управления питанием. Все идентификаторы, относящиеся к управлению питанием, являются идентификаторами GUID, но мои быстрые опросы показывают, что значения по умолчанию одинаковы на всех компьютерах. Тот подразделы PowerSchemes
, ну, схемы питания. 381b4222-f694-41f0-9685-ff5bb260df2e
, например, is сбалансированный (рекомендуется).
подразделы ключей схемы электропитания являются категориями, как они появляются в расширенных параметрах питания. Они определены в PowerSettings
подраздел Power
. Например, 0012ee47-9041-4b5d-9b77-535fba8b1442
is жесткий диск как видно на изображении выше. Подразделы те индивидуальные настройки. 6738e2c4-e8a5-4a42-b16a-e040e769756e
is отключать жесткий диск через. Эти ключи имеют DefaultPowerSchemeValues
подраздел, который имеет подраздел для каждой стандартной схемы управления питанием. Эти ключи имеют AcSettingIndex
и DcSettingIndex
запись, которая именно то, что вы думаете. Используемые единицы измерения варьируются от настройки к настройке; этот использует секунды. Итак, вы видите, что жесткий диск по умолчанию выключен тайм-аут для сбалансированного плана питания 1200 секунд (20 минут), когда подключен и 600 секунд (10 минут) на батарея.
теперь вернемся к User\PowerSchemes
ключ. Поскольку пользователь, возможно, никогда не изменял параметры, нет никакой гарантии, что ключ будет иметь записи настроек AC и DC, подраздел настройки или даже подраздел категории. Если искомое значение отсутствует, необходимо проверить значение по умолчанию для текущей схемы управления питанием в PowerSettings\DefaultPowerSchemeValues
.
обратите внимание, что в то время как каждый может читать эти ключи и значения, даже администраторы не могут писать. Это потому, что параметры питания должны управляться через Power
сервис, который работает как SYSTEM
.
разработчики компилируемых (C++) приложений должны использовать документированный интерфейс для управления питанием. Звони GetCurrentPowerPolicies
, получаем user
часть POWER_POLICY
структура и посмотрите на SpindownTimeoutAc
и SpindownTimeoutDc
значения.