【发布时间】:2020-09-21 23:25:33
【问题描述】:
所以我搜索了一段时间关于如何复制屏幕上的内容或截屏,我找到了一些解决方案,例如这种方法:
public static Bitmap TakeScreenshot()
{
Bitmap newImg = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(newImg as Image);
graphics.CopyFromScreen(0, 0, 0, 0, newImg.Size);
return newImg;
}
这个方法很好用,只是当你以管理员身份运行应用程序时,屏幕会显示类似“Are you sure? YES NO”:
甚至在 CTRL + ALT + DEL 上:
在这些屏幕上,这些方法不起作用,因为它们会显示黑屏,此外,某些应用程序会在它们上显示黑屏,因为它们就像受保护/不在您的屏幕上一样屏幕上的其他东西正常显示。
为什么会这样?以及如何准确地看到我在屏幕上看到的内容?
编辑#1:
使用 PsExec 找到解决方案。 (感谢 Koray Elbek)
但仍然没有解决某些应用程序发生的问题,因为它们上面会有一个这样的黑框:
为什么会发生这种情况以及如何获得正确的屏幕截图?
【问题讨论】:
标签: c# copy screen screenshot