WMIWin32_MonitorDesktopを使用して、システム上のすべてのモニター情報を取得しています。
ただし、返されるのは 1 つだけです。いくつかのコンピューターで試してみましたが、それらには間違いなく複数のモニターがあり、接続されて動作しています。
ManagementObjectSearcher monitorObjectSearch = new ManagementObjectSearcher("SELECT * FROM Win32_DesktopMonitor");
foreach (ManagementObject monitor in monitorObjectSearch.Get())
{
Debug.WriteLine(monitor["Description"]);
}
モニターが 1 つしか返されない理由を知っている人はいますか?
また、monitorObjectSearch.Get() の戻り値を変数に割り当てると、関数が常にタイムアウトするため、イミディエイト ウィンドウで Count プロパティを評価できません。