3

У меня есть два монитора, которые я хочу переключать между использованием автоматической горячей клавиши и пульта дистанционного управления. У меня есть ИК-пульт, запускающий файл .bat при нажатии кнопки, но я не могу понять, как проверить, какой монитор используется в данный момент. Так, например, я хочу что-то вроде этого:

@ эхо выключено

если дисплей внешний

DisplaySwitch.exe / внутренний

) еще (

DisplaySwitch.exe / внешний

)

В принципе, я не могу понять, какой была бы команда "if" для этой ситуации (по общему признанию, не очень супер-пользователь в любом случае).

Спасибо за любую помощь ~!

1 ответ1

1

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

@echo off
Setlocal
Set myFlag=c:\somefolder\monitor.flg
if Exist "%myFlag%" (
    rem flag exists. Activate internal display. Then delete flag.
    DisplaySwitch.exe /internal
    del /q "%myFlag%"
) else (
    rem flag does not exist. Activate external display. Then create flag
    DisplaySwitch.exe /external
    Echo I'm a flag for myScript.cmd>"%myFlag%"
)

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

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