Смена источника питания в журнале windows

Обновлено: 07.07.2024

Одна из проблем, о которых сообщают многие пользователи Windows 10, заключается в том, что их План питания ПК продолжает автоматически меняться, особенно после перезагрузки. Это распространенная проблема, с которой сталкиваются многие, и особенно о ней сообщают пользователи, которые недавно обновили материнскую плату, ЦП или обновили свою операционную систему Windows 10.

План электропитания Windows 10 постоянно меняется

Из-за этой проблемы Windows 10 не может сохранить план управления питанием, что приводит к необычному спящему режиму, проблемам с яркостью и т. Д. В большинстве случаев его просто меняют на высокую производительность. Как обычный пользователь ПК с Windows 10, эта проблема может раздражать, особенно если вы предпочитаете определенные параметры питания.

Итак, если вы также столкнулись с этой проблемой, выполните следующие исправления, и я уверен, что одно из них подойдет вам.

  1. Войдите в свою учетную запись администратора
  2. Сбросьте свой план питания
  3. Проверьте предустановленное программное обеспечение Power Manager
  4. Обновите графический драйвер
  5. Запустите средство устранения неполадок питания и перезагрузите компьютер.
  6. Чистая загрузка вашего компьютера
  7. Просканируйте вашу систему на вирусы
  8. Отключить ЯркостьСбросить
  9. Отключить игровой режим
  10. Используйте инструмент PowerCFG для поиска и устранения неисправностей в схемах электропитания.

Давайте подробно рассмотрим эти исправления.

1]Войдите в систему под своей учетной записью администратора.

Возможно, вы вносите изменения без прав администратора и каждый раз терпите неудачу. Прежде чем углубляться в приведенные ниже исправления, попробуйте войти в систему с учетной записью администратора и настроить параметры схемы управления питанием. Затем войдите в систему с обычным именем пользователя Windows и посмотрите, сохраняется ли проблема.

2]Сбросьте свой план электропитания

Чтобы сбросить план питания, выполните следующие действия:

Откройте Панель управления> Все элементы панели управления> Электропитание> Изменить настройки плана и восстановите настройки схемы управления питанием по умолчанию, нажав на Восстановить настройки плана по умолчанию кнопка для этого плана. Сделайте это для всех ваших планов электропитания.

План питания продолжает меняться

Кроме того, вы также можете восстановить настройки плана по умолчанию по умолчанию, используя командную строку, используя ниже:

Откройте командную строку от имени администратора и выполните следующую команду:

Закройте командную строку.

Теперь создайте новый план управления питанием.

Создать новый план очень просто.

План питания продолжает меняться

Откройте «Настройки» и перейдите в «Система»> «Питание и сон»> выберите «Дополнительные настройки питания».


Нажмите на Создать план питания вариант в верхнем левом углу.

Теперь выполните процедуру, чтобы создать новую схему управления питанием.

3]Проверьте предустановленное программное обеспечение Power Manager.

Убедитесь, что ваш OEM-производитель установил программное обеспечение Power Manager, Dell, HP и т. Д. Часто это делают. Это могло быть причиной того, что это произошло.

4]Обновите драйвер устройства.

Обновите драйверы графики и посмотрите.

5]Запустите средство устранения неполадок питания и перезагрузите компьютер.

Запустите средство устранения неполадок питания. Вы можете получить к нему доступ через страницу настроек средства устранения неполадок Windows 10.

6]Чистая загрузка компьютера

Если проблема все еще не устранена, выполните чистую загрузку компьютера. Вот как можно очистить boot. Иногда причиной могут быть конфликтующие приложения и системные файлы. Изменение плана питания, поэтому чистая загрузка помогает анализировать и удалять конфликтующие приложения. Вот как вы можете выполнить чистую загрузку вашего ПК.

Оказавшись в состоянии чистой загрузки, вам придется вручную устранить неполадки, чтобы идентифицировать нарушителя.

7]Просканируйте вашу систему на вирусы

Часто причиной этой проблемы являются вирусы и вредоносные программы, и схема управления питанием постоянно меняется на сбалансированную. Следовательно, если ваша проблема все еще решена, тогда просканируйте вашу систему на наличие вредоносных программ.

Вы также можете использовать встроенный в Windows 10 Защитник Windows или сторонний антивирус по вашему выбору.

Читать: Как устранить неполадки в схемах электропитания.

8]Отключить сброс яркости

Открыть Планировщик заданий с помощью Начать поиск. На левой панели вы увидите библиотеку планировщика заданий. Если вы видите опцию Display на следующих шагах, выполните Яркость Сброс.

Перейдите в Microsoft> Windows> Дисплей> Яркость.

На правой панели, если вы видите запланированную задачу под названием BrightnessReset, дважды щелкните ее> Свойства> вкладка Триггеры> Изменить.

Теперь отключите его и посмотрите, работает ли он для вас. Если это не поможет, вы можете снова включить его.

9]Отключить игровой режим

Это исправление предназначено только для пользователей антивируса Avast.

Если вы используете антивирус Avast, вам необходимо отключить игровой режим. Сделать это:-

Открыть Avast > Нажмите на Спектакль > Выбрать Игровой режим > Переключить выключенный Игровой режим, чтобы отключить его.

10]Используйте инструмент PowerCFG для устранения неполадок в схемах электропитания

Если вам нужно продолжить устранение неполадок в схемах электропитания, используйте встроенный инструмент командной строки PowerCFG.

Сообщите нам, какой метод сработал для вас или есть ли у вас другое решение этой проблемы.

Прошу заранее прощения, что вопрос лишь косвенно относиться к темам трейдинга, но если это не очень сложно, то прошу ответить: если возможность либо из Планировщика заданий, либо из самого MQL5 поймать событие перехода питания ноутбука (Fujitsu siemens, Vista houme) от адаптера на батарею. Чего-то в инете тяжело ищется и как-то плохо понятно. А среди стандартных событий журнала не нашёл такого.

Прошу заранее прощения, что вопрос лишь косвенно относиться к темам трейдинга, но если это не очень сложно, то прошу ответить: если возможность либо из Планировщика заданий, либо из самого MQL5 поймать событие перехода питания ноутбука (Fujitsu siemens, Vista houme) от адаптера на батарею. Чего-то в инете тяжело ищется и как-то плохо понятно. А среди стандартных событий журнала не нашёл такого.

Насколько я помню в журнал системы переходы на питание от батарей и от AC не пишутся. Ни от Kernel-Power ни от Power-Troubleshooter. Поэтому использовать TaskSheduler не получится.

Единственное решение которое приходит на ум - это написть собственную небольшую программу и используя RegisterPowerSettingNotification подпиаться на получение уведомлений об изменерии сточника питания.

А в счем сообственно сама проблема?

Registers the application to receive power setting notifications for the specific power setting event. Syntax Parameters hRecipient [in] Handle indicating where the power setting notifications are to be sent. For interactive applications, the Flags parameter should be zero, and the hRecipient parameter should be a window handle. For services.

А в счем сообственно сама проблема?

Да никикой--всё от скуки! Тестера всё нет, а у меня вся работа на нём. Советники давно написаны и сутками болтаются на ноутах. Иногда ночью надо дать возможность программе коррктно завершиться, после отключения сети.

А так, спасибо! Вижу, что двигался в правильном направлении (просто думал, что проще можно).

Да никикой--всё от скуки! Тестера всё нет, а у меня вся работа на нём. Советники давно написаны и сутками болтаются на ноутах. Иногда ночью надо дать возможность программе коррктно завершиться, после отключения сети.

А так, спасибо! Вижу, что двигался в правильном направлении (просто думал, что проще можно).

Но вот еще пара слов про это - Ну если нужно как-то особенно "проще", хотя на самом деле помоему ничего сложного тут нет и не очень понятно как же иначе что-то получить в программе вообще.

Ну если например нужно посто запустить программу там, или выполнить какие-то действия, то можно воспользоваться Windows Script Host и там обрабатывать WMI евенты. Ну сообственно тут тоже "проще"-сть , относительна так как там программировать придется тоже, а среды для отладки/разработки вообще никакой. Но зато скрипты типа батников.

Но вот еще пара слов про это - Ну если нужно как-то особенно "проще", хотя на самом деле помоему ничего сложного тут нет и не очень понятно как же иначе что-то получить в программе вообще.

Видимо, мой уровень несколько ниже, чем вы предполагаете. Чтоб было понятно, то я пишу только на MQL и когда-то давно писал на PL/1, Fortran, Pascal и т.д. Чувствуете разницу? Но тем не менее задача зацепила и надо её решить. Потому позволю себе несколько вопросов в понятной мне терминологии.

1. Как я понимаю в ОС имеются встроенные библиотеки по работе с событиями питания компьютера.

2. Необходимо узнать имя этой библиотеки (для Висты), далее имя функции из библиотеки, отвечающей за событие изменения питания компа, а также значение параметра, указывающего, что ноут перешёл на питание от батареи.

3. Далее необходимо в программе на MQL5 подсоединитья к этой библиотеки и в OnTimer() опрашивать функцию на предмет работы от батареи.

Поправте, если это неверное рассуждение (похоже, нельзя напрямую обратиться к системной библиотке?)

Вот информация по вашей ссылке (с автопереводом). Может покажете, что здесь мне нужно.

Заявления должны регистрироваться для каждого события смены власти, которые могут повлиять на их поведение. Вот некоторые наиболее часто встречающиеся PowerSetting ценностей.

Уведомляет каждый раз, когда активные изменения схемы сила личности. Вся власть схемах карт к одному из этих личностей. Данные член GUID , что свидетельствует о новой активной личности схема власти.

Высокая производительность - схема предназначена для обеспечения максимальной производительности за счет экономии потребления энергии.

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

Автоматически - схема предназначена для автоматического баланса производительности и экономии энергопотребления.

Уведомляет каждый раз, когда изменения в системе источника питания. Данные член DWORD со значениями из SYSTEM_POWER_CONDITION нумерация, что указывает на текущий источник питания.

Компьютер на питание от источника переменного тока (или аналогичное оборудование, такое как ноутбук питание от 12V автомобильный адаптер).

Компьютер питается от источника питания бортовых батарей.

Компьютер питается от краткосрочных источнику питания такие устройства, как ИБП.

Registers the application to receive power setting notifications for the specific power setting event. Syntax Parameters hRecipient [in] Handle indicating where the power setting notifications are to be sent. For interactive applications, the Flags parameter should be zero, and the hRecipient parameter should be a window handle. For services.

Видимо, мой уровень несколько ниже, чем вы предполагаете. Чтоб было понятно, то я пишу только на MQL и когда-то давно писал на PL/1, Fortran, Pascal и т.д. Чувствуете разницу? Но тем не менее задача зацепила и надо её решить. Потому позволю себе несколько вопросов в понятной мне терминологии.

1. Как я понимаю в ОС имеются встроенные библиотеки по работе с событиями питания компьютера.

2. Необходимо узнать имя этой библиотеки (для Висты), далее имя функции из библиотеки, отвечающей за событие изменения питания компа, а также значение параметра, указывающего, что ноут перешёл на питание от батареи.

3. Далее необходимо в программе на MQL5 подсоединитья к этой библиотеки и в OnTimer() опрашивать функцию на предмет работы от батареи.

Поправте, если это неверное рассуждение (похоже, нельзя напрямую обратиться к системной библиотке?)

Знаете, а я ведь тоже писал на PL/1 и Фортране, и на паскале. :)

PL/1 отличный язык, кстати. А фортран так даже был рабочим языком для системных программистов на PDP где я начинал как системщик. Про терминологию скажу так - если Вы владели на должном уровне в те времена, то по сути ничего не изменилось. Раньше DLL назывались "разделяемый библиотеки" которые загружались в память системы и разные программы могли их используя совместно, "разделяя" между собой. Суть библиотеки DLL состоит в том, что она "отображается" в адресное пространство всех процессов которые ее "загрузили" . Причем она с системе присутствует в единственном экземпляре, и ее отображение далается в режиме так называемого CopyOnWrite, то есть как только какой-то из процессов который ее использует сделает запись в ее адресное пространство она "копируется" ему и запись разрешается. Последнее замечание очень поверхностно и все гораздо сложнее. Но в целом Вы можете просто считать что владеете этой библиотекой эксклюзивно. Так проше, и если не уходить в дебри то вполне сойдет. Просто там есть куча ньюансов которые тут помоему излагать излишне. DLL это по сути просто программа, у которой не одна точка входа как у просто программы ( хотя и у программы их может быть несколько ) , ну вот не одна, а много - весь их список хранится в так называемом "экспорте" . А у программы ( и у DLL тоже ) есть так называемые "импорты" это то что программе надо для работы. Там перечисленны DLL, котрые загружаются еще до того как создание процесса будет завершено. И есть например какйю-то DLL найти не удается то создание процесса обламывается, ну то есть он не создастся. Обычно к каждой DLL есть маленькая статическая библитека ( статическая библиотека это просто набор обьектных модулей, он выглядит в виде файла с расширением ".LIB" ). Эта маленькая библиотека имеет внутри себя набор таких как-бы переходников, для функций , и при обращении к какой либо функции происходит загрузка уже самой DLL. Ну а если DLL уже загруженна и отображена в адресное пространство просса, то происходит просто переход по тому адресу который имеет эта библиотесная функция в этой DLL.

То есть для работы с DLL надо либо в ручную загружать ее либо иметь такую соответсвующую ей ".lib".

Программировать сейчас принято на C или C++, и обычно все пользуются Visual Stdio от микрософт. Она даже бесплатная и скачивается прямо с сайта майкрософт. Там в месте с ней идет полный набор для программирования и редактор например и компилятор и все в остновном такие статические библиотеки для работы с операционной системой.

Для того чтобы использовать в MQL внешние продрограммы написанные на других языках Вам надо будет сдалать свою DLL и импортировать ее в свою программу на MQL-е, как это сделать написанно в документации. В этой совей DLL-библиотке Вам надо будет сделать такую функцию которая бы возвращала в MQL истину если например компютер работате от батарей. Так же Вам надо будет в ней видимо создать отдельный поток который зарегистрирует обработчик системного события по питанию и при получении такого эвента ( события ) будте созранять то последнее получнееное состояние "типа питания" что бы Вы могли из MQL программы через ту специальную импортируемую функцию получать тип питания. Вызывать эту функцию из MQL наверное проше всего из таймерной "процедуры", ну той функции которая вызывается по таймеру - OnTimer. Таким образом делая "опрос" "поля" ( do polling ) опрашивая состяние системы Вы уже сможете делать на основании того какое питание сейчас то что Вам надо.

Если Вас еще не напугало то что надо будет сделать, то советую Вам все таки по разбираться. Тут совсем нет ничего сложного. Есть масса статей и на русском на эту тему про DLL-и и по просто "как начать программировтать на Си"

Но на самом деле все тут очень просто, :) Ну если на глаз оченивать то строчек 200-300 на С или С++ и еще 50 на MQL.

Конфигурация компьютера
Процессор: Core™2 Quad Q8300 @ 2.50GHz
Материнская плата: MSI G41M-P33 Combo
Память: PQI DDR2 (PC2-6400) 2x2048
HDD: SSD OCZ-AGILITY3 - 120GB
Видеокарта: Gigabyte GeForce GTX660 2048Mb
ОС: Windows 10 Pro x64 (11082)
Говорят, что Windows не пишет в журнал событие подключения/отключения питания, предлагают писать его при помощи PS:

Если получится записывать в журнал состояние отключения питания от сети, сможете и триггер по событию из журнала настроить, в данном примере по событию с кодом 5001.

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

а как с помощью этого скрипта добавить журналирование?
Конфигурация компьютера
Процессор: Core™2 Quad Q8300 @ 2.50GHz
Материнская плата: MSI G41M-P33 Combo
Память: PQI DDR2 (PC2-6400) 2x2048
HDD: SSD OCZ-AGILITY3 - 120GB
Видеокарта: Gigabyte GeForce GTX660 2048Mb
ОС: Windows 10 Pro x64 (11082)

n_i_x, сохранить его как .ps1 и запустить, полагаю. Для ежедневного использования поместить в автозапуск или лучше в планировщик. Потом смотрите события в журнале Приложение - найдите событие с кодом 5001 и источником BatteryStatusMonitor - по правой кнопке мыши на нем - Привязать задачу к событию.

На GitHub есть другой скрипт, который основан на этом: Get and Log Battery and Power Levels using Powershell
Правда он развесистый и мониторит не только подключение/отключение, при желании можете его отредактировать под себя, благо он с комментариями.

Решено: схема питания Windows 10 меняется самостоятельно

  1. Запустите средство устранения неполадок питания
  2. Обновите свой графический драйвер
  3. Чистая загрузка вашего компьютера
  4. Войдите в свою учетную запись администратора
  5. Сканирование вашей системы
  6. Сбросить план питания

1. Запустите средство устранения неполадок питания


  1. Нажмите и удерживайте на клавиатуре кнопку «Окно» и кнопку «W».
  2. После того, как вы нажали кнопки выше, начните вводить «Устранение неполадок».
  3. Щелкните левой кнопкой мыши или коснитесь значка «Устранение неполадок», который появился после поиска.
  4. Щелкните левой кнопкой мыши или коснитесь функции «Система и безопасность», представленной в окне «Устранение неполадок».
  5. Щелкните левой кнопкой мыши или коснитесь функции «Питание», и вам придется следовать инструкциям на экране, чтобы запустить средство устранения неполадок.
  6. После устранения неполадок с электропитанием перезагрузите устройство Windows 8 или Windows 10 и посмотрите, сохраняется ли эта проблема.

2. Обновите свой графический драйвер

Эта проблема может возникнуть из-за того, что ваши драйверы для графической карты могут потребовать обновления системы Windows 8 или Windows 10. Перейдите на веб-сайт производителя и найдите совместимую версию драйверов для системы Windows 10 или Windows 8.

  • СВЯЗАННЫЕ: Как обновить устаревшие драйверы в Windows 10

3. Чистая загрузка вашего компьютера

Некоторые приложения, установленные в Windows 8 или Windows 10, могут конфликтовать с системными файлами, что приводит к постоянному изменению функции плана электропитания. Для этого нам нужно будет выполнить чистую загрузку системы, и мы точно увидим, вызывает ли одно из ваших приложений реакцию системы.

Вот как сделать чистую загрузку в Windows 8 или Windows 10:


  1. Зайдите в Пуск> введите msconfig> нажмите Enter
  2. Перейдите в «Конфигурация системы»> щелкните вкладку «Службы»> установите флажок «Скрыть все службы Microsoft»> нажмите «Отключить все».
  3. Перейдите на вкладку «Автозагрузка»> «Открыть диспетчер задач».
  4. Выберите каждый элемент автозагрузки> нажмите «Отключить»> закрыть диспетчер задач> перезагрузите компьютер.


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

  • СВЯЗАННЫЕ: Исправлено: информация о плане питания недоступна в Windows 10, 8, 8.1 .

4. Войдите в свою учетную запись администратора.

Возможно, у вас нет прав администратора на устройстве Windows 8 или Windows 10, поэтому каждое изменение, которое вы вносите в систему, будет сброшено после перезагрузки устройства.

5. Сканирование вашей системы

Если проблема не устраняется и план питания продолжает меняться на сбалансированный, просканируйте систему на наличие вредоносных программ . Имейте в виду, что вредоносные программы и вирусы могут привести к ненормальной работе вашего ПК, поэтому обязательно запустите полную антивирусную проверку системы.

Читайте также: