EnumDisplayMonitors
是 .NET Framework 中的一個函數,用于枚舉計算機上所有可用的顯示監視器。這個函數主要用于屏幕分辨率、多屏幕配置等場景,而不是專門用于游戲開發。
然而,在游戲開發中,你可能需要獲取玩家的屏幕分辨率、顯示器數量等信息。在這些情況下,你可以使用 EnumDisplayMonitors
函數來獲取這些信息。以下是一個簡單的示例:
using System;
using System.Drawing;
using System.Runtime.InteropServices;
class Program
{
[DllImport("user32.dll")]
static extern bool EnumDisplayMonitors(IntPtr hdc, ref RECT lprcClip, EnumDisplayMonitorsDelegate lpfnEnum, IntPtr lParam);
[StructLayout(LayoutKind.Sequential)]
public struct RECT
{
public int Left;
public int Top;
public int Right;
public int Bottom;
}
public delegate bool EnumDisplayMonitorsDelegate(IntPtr hMonitor, IntPtr hdcMonitor, ref RECT lprcMonitor, IntPtr dwData);
static void Main()
{
EnumDisplayMonitors(IntPtr.Zero, ref new RECT(), (hMonitor, hdcMonitor, lprcMonitor, dwData) =>
{
Console.WriteLine($"Monitor: {lprcMonitor.Left}, {lprcMonitor.Top}, {lprcMonitor.Right}, {lprcMonitor.Bottom}");
return true;
}, IntPtr.Zero);
}
}
這個示例將枚舉所有顯示監視器,并輸出每個監視器的邊界矩形。在游戲開發中,你可以根據需要修改這個示例,以獲取所需的信息。