Ejecute un script cuando el segundo monitor esté conectado

8

Actualmente tengo un televisor conectado a mi computadora a través de HDMI. Cuando configuro la entrada del televisor en el puerto HDMI apropiado, se vuelve visible para la computadora y la computadora lo agrega como una segunda pantalla.

Lo que quería hacer es ejecutar un script (para iniciar XBMC) cuando el monitor secundario está conectado.

El sistema operativo es Windows 8.

George Kendros
fuente
Me parece algo que un gancho de API de Windows podría hacer. Aparte de esto, las cosas de visualización no se manejan bien por defecto. Mira esto para inspirarte.
Doktoro Reichard el
¿Qué versión de Windows?
BillP3rd
es Windows 8.
George Kendros
No será un guión simple pero es posible. consulte stackoverflow.com/questions/5981520/… o msdn.microsoft.com/en-us/library/windows/hardware/…
Colin Pickard el
3
Desafortunadamente, parece que probablemente no haya un evento de Windows en la conexión del monitor, lo que hace que sea imposible crear una tarea de planificador. Por lo tanto, tendría que ser un programa de terceros, pero todavía tengo que encontrar uno. Las únicas pistas parecen ser recursos de programación, que desafortunadamente, como siempre, me tienta a escribir dicho programa. ¬_¬
Synetech 01 de

Respuestas:

4

Puede hacer esto en AutoHotKey o AutoIt. Pueden conectar WinApi, bastante fácil, crear un archivo .ahk y ejecutarlo con AutoHotkeyU64.exe

OnMessage(0x219, "MsgMonitor")
MsgMonitor(wParam, lParam, msg)
{
    if (wParam = 7) {
        Run, Notepad.exe
    } Else {
        MsgBox probably disconected. do something else
    }
    MsgBox check %wParam% and %lParam% and decide to run programs with %msg%
}
;wParam: 7 lParam: 0  monitor connected
;wParam: 32772 lParam: 8977536 should be on disconected

No tengo ningún dispositivo HDMI, puedo probarlo, pero funciona cuando estoy desconectando mi cable DVI del monitor principal.

Yevhenii Ponomar
fuente