É claro que, se alguma coisa falhar no lado do software, sempre haverá a solução "hardware" :
Um botão, liga e desliga o monitor e não fica fora de alcance.
Desativo meu monitor usando o nircommand, que usa a função de monitor de desligamento padrão do Windows. O problema disso é que a tela liga quando eu movo meu mouse ou digito algo no teclado (como controlar o spotify).
Eu preciso desligar o monitor e não ligá-lo em um evento, existe alguma maneira de fazer isso?
É claro que, se alguma coisa falhar no lado do software, sempre haverá a solução "hardware" :
Um botão, liga e desliga o monitor e não fica fora de alcance.
Como você está usando o Windows 7, pode tentar alternar a exibição com Win + P para uma posição na qual ele redirecionaria tudo para a exibição externa.
Mais diretamente, você poderia criar um atalho para o programa que é chamado por este atalho:
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
Claro, isso só funcionaria se você não tivesse um monitor externo conectado.
Você pode fazer isso com C # . Pessoalmente, se eu estivesse fazendo isso, escreveria um pequeno executável em C # que simplesmente leva um argumento para qual ação ele executará e, em seguida, escreve um wrapper em autoit que monitora os critérios necessários para executar qualquer ação usando esse executável.
Tags windows-7 display automation