Arquivo em lote para primeiro verificar qual tela estou usando e, em seguida, alternar para o outro

3

Eu tenho dois monitores que eu quero alternar usando a tecla de atalho automática e um controle remoto IR. Eu tenho o IR remoto executando o arquivo .bat no botão de imprensa, mas não consigo descobrir como verificar qual monitor está atualmente em uso. Então, por exemplo, eu quero algo assim:

@echo off

se a exibição for externa

DisplaySwitch.exe / interno

) else (

DisplaySwitch.exe / external

Basicamente, eu não consigo descobrir o que seria o comando "se" para esta situação (admitidamente não é um super usuário em qualquer extensão).

Obrigado por toda e qualquer ajuda ~!

    
por secondshepherd 12.07.2017 / 04:07

1 resposta

1

Se você quiser que seu arquivo de lote sempre mude para a tela outro , ele pode fazer isso usando um arquivo de sinalizador para lembrar qual tela foi ativada pela última vez. Veja como:

@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%"
)

Basicamente, o script usa a existência / não existência do arquivo de sinalização como um indicador da exibição que ativou na última vez que foi executado. Contanto que você coloque o arquivo de sinalizador em algum lugar que não possa ser perturbado, ele irá alternar fielmente o comportamento do script entre as execuções.

    
por 12.07.2017 / 05:04