te lo digo en forma de logica aqui tengo una idea, tu progrtama se debe ejecutar al iniciar windows, en eso cada 1 minuto digamos va escaneando si hay habuertas ventanas, una vez que el contador de ventanas este en cero inicias el proceso de apagado.
apis que debes usar:
findwindow
getwindows
gethwnd
creo que esas son todas
suerte