设置我的显示分辨率

我是C#开发人员,我必须定期更改我的显示分辨率。

有很多关于如何读取当前显示分辨​​率的示例: SystemInformation.PrimaryMonitorSize

我找到了ChangeDisplaySettingsEx函数

在C#中执行此操作的唯一方法是使用PInvoke ???

对我来说这很简单,很容易得到这些信息,但很难设置它……

您必须对ChangedisplaySetting进行PInvoke调用。

这是一个包含一些示例代码的链接, http://www.xtremedotnettalk.com/printthread.php?t = 73184 。

我还建议您查看Jared Parsons PInvoke Toolkit。 您可以在这里下载:

http://www.codeplex.com/clrinterop/Release/ProjectReleases.aspx?ReleaseId=14120

它可以轻松地为您的代码添加pinvoke签名。 它并不总是选择正确的互操作类型,但它通常非常接近,即使您必须进行一些更改,它仍然通常比手动翻译所有内容更快。

简单回答:是的。 你应该使用PInvoke。