Я хочу запустить определенный генератор шума на моем компьютере (mynoise.net) ночью и дать ему поработать определенное время перед тем, как перевести Windows в спящий режим (я не хочу выключать Windows, просто сделайте точно так же, как если бы я нажал Пуск> Мощность> Сон).

Я также хотел бы, чтобы мониторы были выключены - хотя я бы предпочел не использовать их физические переключатели, потому что при этом начинается смещение окон вокруг, перенастройка основного монитора и т.д. РЕДАКТИРОВАТЬ: я имею в виду, что мониторы отключаются во время перед сном, поэтому они не работают. не мешайте мне в темной комнате, пока работает генератор шума.

Я попытался просто изменить параметры электропитания, в которых есть параметры "Выключить дисплей" и "Перевести компьютер в спящий режим", но

а) Затем я должен не забыть вручную изменить параметры питания на следующее утро. Я просто хочу одноразовый таймер сна.

б) Сайт генератора шума останавливает сон Windows (вероятно, по замыслу). Поэтому мне нужно что-то, что заставит спать, как будто я выбрал это через меню Пуск.

Какие-либо предложения? Может быть, какое-то приложение, которое я не нашел, или что-то вроде инструкции командной строки, которую я могу поместить в командный файл, или вызвать с помощью AutoHotkey?

2 ответа2

1
  1. Нажмите Пуск
  2. Нажмите Все программы
  3. Нажмите Аксессуары> Блокнот
  4. Скопируйте и вставьте следующую команду в блокнот и сохраните как sleepcommand.bat в нужном месте.

rundll32.exe powrprof.dll, SetSuspendState 0,1,0

  1. Нажмите Пуск
  2. Нажмите Все программы
  3. Нажмите Аксессуары> Системные инструменты> Планировщик задач.
  4. Открыв планировщик задач, вы можете создать свою собственную задачу, щелкнув «Создать базовую задачу». Это действие запускает мастера, который проведет вас через процесс, предложив вам, какую программу вы хотите выполнить. Укажите место, где вы сохранили sleepcommand.bat, и установите расписание.
0

Я сделал скрипт AHK, который делает то, что я хочу:

; Monitors off and sleep [Win S]
;
#s::
  MsgBox, 1, Sleep timer, Monitors will go off, and computer will sleep in 45 minutes. Press Win+Esc at any time to cancel script.
  IfMsgBox Cancel
    Return
  Sleep 1000
  ; Turn off monitors
  SendMessage, 0x112, 0xF170, 2,, Program Manager
  ; Pause for 45 minutes
  Sleep 1000 * 60 * 45
  ; Put Windows to sleep
  DllCall("PowrProf\SetSuspendState", "int", 0, "int", 0, "int", 0)
Return

; Cancel script [Win Esc]
#Esc::
  MsgBox Cancelling AHK script.
  Reload
Return

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