3

Возможный дубликат:
Есть ли способ выполнить программу на событиях питания?

Есть ли событие Windows, которое я могу наблюдать в планировщике заданий, которое будет срабатывать при подключении питания? А событие, когда питание отключено?

Я хочу запустить и остановить CrashPlan при питании от батареи. (Это был запрос 2,5-летней давности в CrashPlan, и, честно говоря, я не могу дождаться, когда они его добавят.)

Другие также спрашивали ранее, как отключить SuperFetch и Search Indexing от батареи. Думаю, этот трюк тоже решит эти вопросы.

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

2 ответа2

3

По умолчанию Windows не регистрирует событие, когда вы отключаете или подключаете компьютер.

Однако с PowerShell вы можете прослушивать такие изменения и записывать свои собственные события в журнал. Этот скрипт сделает это:

New-EventLog -Source BatteryStatusMonitor -LogName Application

Function OnBatteryStatusChange ($NewStatus) {
  If ($NewStatus -eq 1) {
    $EventID = 5001
    $Message = "The computer was unplugged."
  } ElseIf ($NewStatus -eq 2) {
    $EventID = 5002
    $Message = "The computer was plugged in."
  } Else {
    $EventID = 5000
    $Message = "Battery status changed to $NewStatus"
  }
  Write-EventLog -LogName Application -Source BatteryStatusMonitor -EventID $EventID -Message $Message
}

$Query = "select * from __instancemodificationevent within 3 where targetinstance isa 'win32_battery' and targetinstance.batterystatus <> previousinstance.batterystatus"

Register-WmiEvent -Query $Query -Action {OnBatteryStatusChange $Event.SourceEventArgs.NewEvent.TargetInstance.BatteryStatus} -SourceIdentifier "BatteryStatusChange"

For (;;) {}
0

Если вы заинтересованы только в поддержке Windows Vista и выше, зарегистрируйтесь для событий Power.

Используйте RegisterPowerSettingNotification со значением GUID_ACDC_POWER_SOURCE.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .