Encontrei a API do painel de controle aqui: link . O seguinte comando não está funcionando:
rundll32.exe NvCpl.dll,dtcfg setmode 2 1920 1080 32 59
Este discussão revela que essa abordagem não é mais suportada: (
A solução é criar um aplicativo que use funções NvAPI_DISP_ * para fazer as alterações apropriadas.
- NvAPI_DISP_GetTiming() // with NV_TIMING_OVERRIDE_CVT_RB parameter set
- NvAPI_DISP_TryCustomDisplay()
- NvAPI_DISP_SaveCustomDisplay()
A única coisa que resta é executar este programa quando o HDMI está conectado: Aqui (falta de reputação) é como encontrar o GUID de classe de dispositivo para os adaptadores gráficos. Em seguida, use a função RegisterDeviceNotification () para se registrar para obter a notificação WM_DEVICECHANGE.