Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to know if the user is using multiple monitors

Tags:

c++

c#

.net

winapi

I'm trying to figure out a way to know if the user is using multiple monitors.

I would like to know how to do this in native C++ (using the Win32 API) and with managed code (using the .NET Framework).

Thanks in advance

like image 975
Raphael Avatar asked Feb 08 '10 05:02

Raphael


1 Answers

I can give you C# .NET:

if (Screen.AllScreens.Length > 1)
{
    // Multiple monitors
}

Edit: A search on Google turned up the following. It mentions 98/ME so it might no be relevant but may point you in the right direction:

There are new APIs for handling multiple monitors in Windows 98. The APIs used in the monitors class sample are GetMonitorInfo, MonitorFromWindow and MonitorFromRect.

The GetSystemMetrics API has some new constants (see below) that can be used to determine the metrics of a multiple monitor system. The GetSystemMetrics API returns information about the Windows environment. This API can be used to determine how many monitors are on the system, whether they are set at the same display format, and the size of the virtual desktop.

http://support.microsoft.com/kb/194578

like image 190
Cory Charlton Avatar answered Sep 17 '22 20:09

Cory Charlton