Автоматичний режим сну на холостому комп’ютері за певного рівня акумулятора


1

Чи можу я створити завдання в планувальнику завдань, яке починається, коли певний рівень заряду акумулятора досягне режиму очікування, щоб перейти до сну? Windows дає можливість зробити комп'ютер спати на певному рівні акумулятора, але все одно, ноутбук не працює чи ні.


Чи знайшли ви якийсь спосіб змусити це працювати?
pilau

Відповіді:


1

Зрозумів!

Я зробив планове завдання, яке спрацьовує, коли комп'ютер працює в режимі очікування , і неодноразово запускає пакетний файл, який перевіряє, чи розряджається акумулятор і скільки відсотків він несе.

Якщо акумулятор розряджається (тобто ноутбук не підключено до електромережі), а акумулятор заряджається 25% або менше, він негайно переведе комп'ютер у режим сну (або перебуває в сплячому режимі, якщо його вже включено).

Завдання ставиться для того, щоб повторювати себе (тобто запускати пакетний файл) кожні 5 хвилин на невизначений термін. Також переконайтеся, що ви встановили такі умови: Умови спрацювання в режимі очікування

Я грунтувався на своєму пакетному скрипті battstat.batзвідси: http://www.robvanderwoude.com/wmiexamples.php

Мій сценарій ви знайдете нижче.

@ECHO OFF

:: Localize variables
SETLOCAL

:: Use WMI to retrieve battery status information
FOR /F "tokens=*  delims="  %%A IN ('WMIC /NameSpace:"\\root\WMI" Path BatteryStatus              Get PowerOnline^,RemainingCapacity  /Format:list ^| FIND "="')     DO SET  Battery.%%A
FOR /F "tokens=*  delims="  %%A IN ('WMIC /NameSpace:"\\root\WMI" Path BatteryFullChargedCapacity Get FullChargedCapacity             /Format:list ^| FIND "="')     DO SET  Battery.%%A

:: Calculate runtime left and capacity
SET /A Battery.RemainingCapacity = ( %Battery.RemainingCapacity%00 + %Battery.FullChargedCapacity% / 2 ) / %Battery.FullChargedCapacity%

:: Display results
IF /I "%Battery.PowerOnline%"=="FALSE" (
    IF %Battery.RemainingCapacity% LEQ 25 (
        Rundll32.exe Powrprof.dll,SetSuspendState Sleep
    )
)
GOTO:EOF

:: End localization
IF "%OS%"=="Windows_NT" ENDLOCAL

Я нехай знаю, чи працює це на мене ..
labeebahmad32,

@ labeebahmad32 чудово - повідомте мені :)
pilau

@ labeebahmad32 в кінцевому підсумку це вийшло для вас?
pilau
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.