Включение режима эффективности (EcoQoS) для процесса по PID в C++ и проверка в диспетчере задачC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Включение режима эффективности (EcoQoS) для процесса по PID в C++ и проверка в диспетчере задач

Сообщение Anonymous »

Я пытаюсь включить режим эффективности (EcoQoS) для процесса, учитывая его идентификатор процесса (PID). Я уже упоминал аналогичный вопрос о переполнении стека, но проблемы все еще возникают.
Проблема:
Хотя журналы показывают, что EcoQoS будучи включенным, он не отображается в диспетчере задач. Для любого процесса, если режим эффективности включен, диспетчер задач должен отображать состояние этого процесса в режиме эффективности.
[img]https:/ /i.sstatic.net/bZ76IZAU.png[/img]

Цель:
Включить EcoQoS для заданного PID. В настоящее время я пробую это в примере консольного приложения C++ в Visual Studio 2022 в Windows 11. Со временем я планирую интегрировать этот подход в более крупное приложение UWP, написанное на .NET C#.
Код:

Код: Выделить всё

#include 
#include 
#include
#include 
#include 
#include 

#pragma comment(lib, "pdh.lib")

// Enables EcoQoS (power throttling) for a specific process by its PID
void enable_ecoqos_for_pid(DWORD pid) {
// Open a handle to the target process with the required access rights
HANDLE hProcess = OpenProcess(PROCESS_SET_INFORMATION, FALSE, pid);
if (hProcess == NULL) {
// Log an error message if the process handle cannot be obtained
std::cerr 

Подробнее здесь: [url]https://stackoverflow.com/questions/78751361/enabling-efficiency-mode-ecoqos-for-a-process-by-pid-in-c-and-verifying-in-t[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»