Есть ли способ отключить дисплей и включить его снова явно?

4

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

Мне нужно выключить монитор, чтобы он не включался сам на событии, есть ли способ сделать это?

HackToHell
источник
2
Используйте кнопку на мониторе?
EBGreen
@EBGreen То, как расположен мой компьютерный монитор, затрудняет мне доступ к нему
HackToHell
2
Я проверил с AutoHotKey, это то же самое, кажется, нет команды, которая позволяет выключить экран. Только положить в режим ожидания.
Gnoupi
1
Мой комментарий был по крайней мере частично языком в щеку. Я подозреваю, что вы не сможете сделать это. Лучшее, что я могу придумать, - это запустить скрипт, который будет использовать команду nir для отключения монитора каждые 5 секунд, а затем иметь горячую клавишу, чтобы убить скрипт.
EBGreen

Ответы:

1

Конечно, если что-то не так на стороне программного обеспечения, всегда есть «аппаратное» решение :

Розетка дистанционного управления

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

Gnoupi
источник
2
(Дорогие США, ваши розетки выглядят грустными. Или шокированными. В любом случае, это тревожит)
Gnoupi
1

Поскольку вы используете Windows 7, вы можете попробовать переключить дисплей с помощью Win + P в положение, в котором он будет перенаправлять все на внешний дисплей.

Более прямо, вы можете сделать ярлык для программы, которая вызывается этим ярлыком:

Switch to External (and black out the main screen)
%windir%\System32\DisplaySwitch.exe /external

Switch back to the main screen 
%windir%\System32\DisplaySwitch.exe /internal

Конечно, это будет работать, только если вы на самом деле не подключили внешний дисплей.

Gnoupi
источник
Хорошая идея, но она не работает на моем компьютере: /
HackToHell
Хм, я думаю, это работает, только если у вас есть способ подключить внешний выход для начала?
Gnoupi
Вероятно, у меня нет другого порта в моем mobo: /
HackToHell
0

Вы можете сделать это с помощью C # . Лично, если бы я делал это, я бы написал небольшой исполняемый файл на C #, который просто принимает аргумент, для которого он будет выполнять действие, а затем написал бы оболочку в autoit, которая отслеживает любые критерии, необходимые для выполнения любых действий с использованием этого исполняемого файла.

MaQleod
источник
Хм, если я не получу лучшего ответа, я напишу свой.
HackToHell
Это та же команда, которую я нашел для использования с AutoHotKey (AutoHotKey может использовать «SendMessage»). К сожалению, это только резервный сигнал, и он просыпается при движении мыши или нажатии клавиши.
Gnoupi