C# 如何在.NET中访问桌面缓冲区的映像?
我正在用Visual Studio用C#制作一个非常简单的应用程序,所以我使用的是Forms软件包。我需要访问它下面所有东西的图像,以便我可以操纵图像。我该怎么做C# 如何在.NET中访问桌面缓冲区的映像?,c#,.net,image,forms,graphics,C#,.net,Image,Forms,Graphics,我正在用Visual Studio用C#制作一个非常简单的应用程序,所以我使用的是Forms软件包。我需要访问它下面所有东西的图像,以便我可以操纵图像。我该怎么做 它不需要非常实时,因为我可能会轮询它不超过10fps。您可以使用图形。CopyFromScreen,但您需要在调用之前隐藏窗口,否则它将显示在图像中。您可以使用Interop获得“桌面窗口”的挂钩,如果这就是你的意思,然后你可以用它来获得你的屏幕截图…这个链接可能会有帮助: 另一个选项(您说的WinForms,右)是创建一个占位符位
它不需要非常实时,因为我可能会轮询它不超过10fps。您可以使用
图形。CopyFromScreen
,但您需要在调用之前隐藏窗口,否则它将显示在图像中。您可以使用Interop获得“桌面窗口”的挂钩,如果这就是你的意思,然后你可以用它来获得你的屏幕截图…这个链接可能会有帮助:
另一个选项(您说的WinForms,右)是创建一个占位符位图,并使用Graphics.CopyFromScreen
方法:
int screenWidth = 1024;
int screenHeight = 768;
Bitmap holder = new Bitmap(screenWidth, screenHeight);
Graphics graphics = Graphics.FromImage(holder);
graphics.CopyFromScreen(0,0,0,0,new Size(screenWidth, screenHeight), CopyPixelOperation.SourceCopy);
链接断开,但看起来有一个新链接: