0

在此先感谢您的帮助。

我想知道如何访问用户 PC 上可用的屏幕分辨率。我想获取所有可用分辨率的列表,并确定用户当前正在运行什么。

4

2 回答 2

1

我相信您可以在 User32.dll 中对EnumDisplaySettings api 调用 进行PInvoke调用。

[DllImport("user32.dll")]
public static extern bool EnumDisplaySettings (string deviceName, int modeNum, ref DEVMODE devMode );

请参见此处的示例。

您当然会遇到双显示器系统的复杂情况,但要获得当前屏幕,您可以这样做

System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width

我假设您说的是可执行文件而不是 ASP.Net 应用程序,但如果您需要 Javascript 中的屏幕大小,则可以使用屏幕对象。

screen.width; screen.height; screen.colorDepth; 
于 2010-06-14T18:07:34.160 回答
0

您可以使用Microsoft.Win32 RegestryKey类从注册表中获取当前屏幕大小。

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Hardware Profiles\...

我会在那里四处寻找你想要的东西,但我不会弄乱他们在那里的任何设置。

于 2010-06-14T18:13:30.963 回答