Windows-индикатор зарядки звука

336
me_alok

Есть ли способ заставить Windows воспроизводить звук при снятом зарядном устройстве. В Linux я обычно получаю звуковое оповещение при снятии зарядного устройства (звуковой сигнал). Это очень полезно для сохранения батареи. Есть встроенный вариант или мне нужно сделать свой?

1
Вместо того, чтобы использовать пакетную или PowerShell, возможно, стоит изучить некоторый C # и использовать [SystemEvents.PowerModeChanged] (https://msdn.microsoft.com/en-us/library/microsoft.win32.systemevents.powermodechanged.aspx. ) событие, чтобы получать активные уведомления. Daniel B 7 лет назад 1

1 ответ на вопрос

1
DavidPostill

Есть встроенный вариант или мне нужно сделать свой?

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

Однако вы можете использовать командные файлы ниже.

Battery.cmd

  • Этот пакетный файл отслеживает, работает ли ноутбук в данный момент от сети или от батареи.

  • Он выполняет проверку каждые 10 минут (настроить по вкусу).

  • Он подаст звуковой сигнал, если сеть отключена и ноутбук начнет использовать батарею.

  • Вам нужно создать beep.cmd(см. Позже).

    @echo off setlocal EnableDelayedExpansion :start rem get the battery status, 1 = battery discharging 2 = on mains rem use findstr to strip blank lines from wmic output  for /f "usebackq skip=1" %%i in (`wmic path win32_battery get batterystatus ^| findstr /r /v "^$"`) do ( set _status=%%i if [!_status!] equ [1] ( rem on battery so beep call beep goto :done ) else ( rem on mains rem wait for 10 minutes then try again timeout /t 600 /nobreak > nul goto :start ) ) :done endlocal 

Beep.cmd

  • Эта команда выдаст эхо, ctrlGкоторое является контрольным символом бела, чтобы издать звуковой сигнал.

Чтобы создать beep.cmd:

  1. Открыть cmdоболочку

  2. Введите следующие команды:

    copy con beep.cmd @echo ^G^Z 

    где ^ G ctrlGи ^ ZctrlZ

  3. Введите следующую команду, чтобы проверить звуковой сигнал:

    beep 

Дальнейшее чтение

Спасибо, ты молодец: D Я изменил время ожидания на 1 секунду, и там у меня есть то, что я хотел. Однако пакетное задание завершается при воспроизведении звукового сигнала. me_alok 7 лет назад 0
@me_alok Вы хотите, чтобы он продолжал подавать звуковые сигналы? DavidPostill 7 лет назад 0
конечно, моя батарея умирает me_alok 7 лет назад 0
@me_alok Измените `goto: done` на` goto: start` :) DavidPostill 7 лет назад 0
Это был вывод "main", '' не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл. "батарея" И да, я немного подправил его, чтобы посмотреть, что происходит me_alok 7 лет назад 0
@me_alok Есть ли у вас `: label` в строке сразу после` (`? DavidPostill 7 лет назад 0
Вывод Bell.cmd '' не распознается как внутренняя или внешняя команда, работающая программа или командный файл. me_alok 7 лет назад 0
Вероятно, это https://stackoverflow.com/documentation/batch-file/3152/comments-in-batch-files/10745/using-labels-as-comments#t=201704230812134988479 DavidPostill 7 лет назад 0
@me_alok `Белл`? Это должен быть `Beep`. Хватит ломать рабочий код :) DavidPostill 7 лет назад 0
Метка: start находится в начале, а: done в конце me_alok 7 лет назад 0
Давайте [продолжим это обсуждение в чате] (http://chat.stackexchange.com/rooms/57570/discussion-between-me-alok-and-davidpostill). me_alok 7 лет назад 0