API для минимального (максимального) состояния процессора, переполнение стека

Мой вопрос о следующей доступной опции настройки в Windows:
В окнах и под опцией питания ==> предварительная настройка питания ==> Управление питанием процессора ==> Минимальное состояние процессора (можно задать в процентах%)

Какова структура API, соответствующая этому значению, я хотел бы написать программу, которая может контролировать% минимального и максимального состояния процессора. Я попытался, SYSTEM_POWER_INFO, SYSTEM_POWER_CAPABILITY, .., ничего не упомянул об этом значении специально.

Посоветуйте, пожалуйста.

С Уважением,

2

Решение

Видимо есть функция Windows под названием WriteProcessorPwrScheme:

BOOLEAN WINAPI WriteProcessorPwrScheme(
_In_  UINT ID,
_In_  PMACHINE_PROCESSOR_POWER_POLICY pMachineProcessorPowerPolicy
);

Источник: я был предупрежден ответом C # в этот ТАК вопрос. Следуйте документации, чтобы увидеть все, что входит в PMACHINE_PROCESSOR_POWER_POLICY состав.

Однако, согласно документам, эта функция не влияет на текущую политику энергопотребления системы. Вам нужно позвонить SetActivePwrScheme:

BOOLEAN WINAPI SetActivePwrScheme(
_In_      UINT uiID,
_In_opt_  PGLOBAL_POWER_POLICY lpGlobalPowerPolicy,
_In_opt_  PPOWER_POLICY lpPowerPolicy
);

Если SetActivePwrScheme не работает или не поддерживается вашей версией Windows, вы можете позвонить PowerSetActiveScheme:

DWORD WINAPI PowerSetActiveScheme(
_In_opt_  HKEY UserRootPowerKey,
_In_      const GUID *SchemeGuid
);

Таким образом, кажется, что вы должны сначала создать схему питания, используя WriteProcessorPwrScheme, который изменяет индекс в набор схем питания, а затем вы должны вызвать SetActivePwrScheme используя этот индекс, чтобы активировать его.

1

Другие решения

Вы можете изменить любую схему питания, используя

PowerWriteACValueIndex()/PowerWriteDCValueIndex()

1-й параметр — NULL,
2-й параметр — GUID для желаемой схемы питания (GUID_MAX_POWER_SAVINGS / GUID_MIN_POWER_SAVINGS / GUID_TYPICAL_POWER_SAVINGS),
3-й параметр — GUID_PROCESSOR_SETTINGS_SUBGROUP,
4-й параметр — GUID_PROCESSOR_THROTTLE_MAXIMUM или GUID_PROCESSOR_THROTTLE_MINIMUM

все описание GUID можно найти в winnt.h

1

По вопросам рекламы [email protected]