截取屏幕截图时的一般 GDI+ 错误 C#
Generic GDI+ Error When screenshot is taken C#
我有一个带有一些小命令的 WPF 工具栏应用程序。其中之一是屏幕截图按钮。当我按下按钮时,我得到一个
"System.Runtime.InteropServices.ExternalException: 'A generic error occurred in GDI+.'" 错误。有人知道如何解决这个问题吗?
我的代码:(抛出错误@bitmap.Save("C:\Screenshots\" + filename);
Rectangle rect = Screen.GetBounds(Point.Empty);
using (Bitmap bitmap = new Bitmap(rect.Width, rect.Height))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
g.CopyFromScreen(Point.Empty, Point.Empty, rect.Size);
}
String filename = "ToolbarSnap" + DateTime.Now.ToString("ddMMyyyy-hhmmss") + ".png";
bitmap.Save("C:\Screenshots\" + filename);
}
如果您确定目标目录存在,并且您有写入权限,您的代码应该可以工作。
为了确保,您可以添加:
Directory.CreateDirectory(directoryPath);
在你的截图代码之前。
我有一个带有一些小命令的 WPF 工具栏应用程序。其中之一是屏幕截图按钮。当我按下按钮时,我得到一个
"System.Runtime.InteropServices.ExternalException: 'A generic error occurred in GDI+.'" 错误。有人知道如何解决这个问题吗?
我的代码:(抛出错误@bitmap.Save("C:\Screenshots\" + filename);
Rectangle rect = Screen.GetBounds(Point.Empty);
using (Bitmap bitmap = new Bitmap(rect.Width, rect.Height))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
g.CopyFromScreen(Point.Empty, Point.Empty, rect.Size);
}
String filename = "ToolbarSnap" + DateTime.Now.ToString("ddMMyyyy-hhmmss") + ".png";
bitmap.Save("C:\Screenshots\" + filename);
}
如果您确定目标目录存在,并且您有写入权限,您的代码应该可以工作。
为了确保,您可以添加:
Directory.CreateDirectory(directoryPath);
在你的截图代码之前。