Программно прочитать значение" выключить жесткий диск после " в Windows

Я ищу способ программно прочитать текущую настройку значения "отключить жесткий диск после", расположенного в разделе "Дополнительные параметры питания" в Windows 7 и более поздних версиях.

Я в курсе

powercfg -change disk-timeout-ac xx

и

powercfg -change disk-timeout-dc xx

команды для установки этого значения. Однако, похоже, нет эквивалентной команды для чтения текущего установленного значения.
Кроме того, я не мог найти параметр реестра для этого.

10
задан Nassbirne
27.03.2023 3:23 Количество просмотров материала 3326
Распечатать страницу

1 ответ

так как вы спрашиваете о Super User вместо переполнения стека, я сосредоточусь на скриптовом (реестре) способе сделать это.

параметры питания доступны в реестре в следующем разделе:

HKLM\CurrentControlSet\Control\Power

на User\PowerSchemes подраздел имеет запись ActivePowerScheme который - как вы могли догадаться-содержит идентификатор текущей схемы управления питанием. Все идентификаторы, относящиеся к управлению питанием, являются идентификаторами GUID, но мои быстрые опросы показывают, что значения по умолчанию одинаковы на всех компьютерах. Тот подразделы PowerSchemes, ну, схемы питания. 381b4222-f694-41f0-9685-ff5bb260df2e, например, is сбалансированный (рекомендуется).

power options

подразделы ключей схемы электропитания являются категориями, как они появляются в расширенных параметрах питания. Они определены в PowerSettings подраздел Power. Например, 0012ee47-9041-4b5d-9b77-535fba8b1442 is жесткий диск как видно на изображении выше. Подразделы те индивидуальные настройки. 6738e2c4-e8a5-4a42-b16a-e040e769756e is отключать жесткий диск через. Эти ключи имеют DefaultPowerSchemeValues подраздел, который имеет подраздел для каждой стандартной схемы управления питанием. Эти ключи имеют AcSettingIndex и DcSettingIndex запись, которая именно то, что вы думаете. Используемые единицы измерения варьируются от настройки к настройке; этот использует секунды. Итак, вы видите, что жесткий диск по умолчанию выключен тайм-аут для сбалансированного плана питания 1200 секунд (20 минут), когда подключен и 600 секунд (10 минут) на батарея.

registry defaults

теперь вернемся к User\PowerSchemes ключ. Поскольку пользователь, возможно, никогда не изменял параметры, нет никакой гарантии, что ключ будет иметь записи настроек AC и DC, подраздел настройки или даже подраздел категории. Если искомое значение отсутствует, необходимо проверить значение по умолчанию для текущей схемы управления питанием в PowerSettings\DefaultPowerSchemeValues.

обратите внимание, что в то время как каждый может читать эти ключи и значения, даже администраторы не могут писать. Это потому, что параметры питания должны управляться через Power сервис, который работает как SYSTEM.


разработчики компилируемых (C++) приложений должны использовать документированный интерфейс для управления питанием. Звони GetCurrentPowerPolicies, получаем user часть POWER_POLICY структура и посмотрите на SpindownTimeoutAc и SpindownTimeoutDc значения.

1
отвечен Ben N 2023-03-28 11:11

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

hard-drive
power-management
windows-7
windows-8
windows-registry
Вверх