Estoy usando WMI Win32_MonitorDesktop
para obtener toda la información de los monitores en el sistema.WMI Obtener todos los monitores que no devuelven todos los monitores
Sin embargo, solo devuelve uno. Lo probé en varias computadoras, y definitivamente tienen múltiples monitores en ellas, conectadas y funcionando.
ManagementObjectSearcher monitorObjectSearch = new ManagementObjectSearcher("SELECT * FROM Win32_DesktopMonitor");
foreach (ManagementObject monitor in monitorObjectSearch.Get())
{
Debug.WriteLine(monitor["Description"]);
}
¿Alguien sabe por qué solo obtengo 1 monitor devuelto?
Además, si asigno el valor de retorno de monitorObjectSearch.Get() a una variable, no puedo evaluar la propiedad Count en la ventana inmediata ya que la función siempre agota el tiempo de espera.
A partir de Windows Vista, el hardware que no es compatible con El Modelo de controlador de pantalla de Windows (WDDM) devuelve valores de propiedad inexactos para las instancias de esta clase. (De http://msdn.microsoft.com/en-us/library/aa394122(VS.85).aspx) –
Eso dice que devolverá valores de propiedad inexactos, los valores que obtengo para el monitor único son correctos. Solo obtengo 1 monitor. –
Cuando uso Screen.AllScreens tengo 2 en la matriz, sin embargo, no puedo obtener el "buen" nombre del monitor desde aquí. –