我知道如何通过编程拍摄屏幕截图但我想拍摄我在消息框中显示的例外的ScreenShots出现在运行时?有可能吗?请建议我...提前致谢
Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap as Image);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
bitmap.Save("c:\\screenshot.jpeg", ImageFormat.Jpeg);
答案 0 :(得分:0)
如果您想要使用MessageBox.Show()
创建的消息框的屏幕截图,那将会有点棘手。以下是几个选项:
ex.ToString()
(其中ex
是您的Exception
对象),跳过屏幕截图并捕获错误内容。另外,请记住MessageBox.Show()
是模态的。如果您将截屏代码放在此行之后,则消息框将在代码运行之前消失。你可以通过一个线程解决这个问题,但这也可能比它的价值更多,并且由于时间问题可能不可靠。
就个人而言,我建议只使用错误内容并跳过屏幕截图。它会更有用,并且可以包含您不希望在消息框中显示用户的信息。