C# &引用;GDI+;中发生一般错误&引用;当我试图用C保存屏幕时#
我是C#的新手,我试图制作一个屏幕,但我不能把它保存在我想要的地方。 这是我的代码:C# &引用;GDI+;中发生一般错误&引用;当我试图用C保存屏幕时#,c#,.net,C#,.net,我是C#的新手,我试图制作一个屏幕,但我不能把它保存在我想要的地方。 这是我的代码: Image img = Clipboard.GetImage(); pictureBox1.Image = img; img.Save("C:\\myimage.jpeg"); 它通常发生在您试图保存文件时没有写入权限的情况下。 这是一种常见的错误,但这是最常见的原因之一 检查权限,或尝试将文件保存到其他位置 更新:我注意到您在pictureBox1中使用了相同的图像。我这样做没有问题,但是您可以尝试使用不同
Image img = Clipboard.GetImage();
pictureBox1.Image = img;
img.Save("C:\\myimage.jpeg");
它通常发生在您试图保存文件时没有写入权限的情况下。 这是一种常见的错误,但这是最常见的原因之一 检查权限,或尝试将文件保存到其他位置 更新:我注意到您在
pictureBox1
中使用了相同的图像。我这样做没有问题,但是您可以尝试使用不同的对象来避免并发和锁定问题。请尝试以下代码:
Image img = Clipboard.GetImage();
pictureBox1.Image = img;
var img2 = new Bitmap(img);
img2.Save("C:\\myimage.jpeg");
问题可能是img对象正在使用。。。错误消息中还有其他内容吗?它只是说一个一般错误吗?是的,它只是说我一个一般错误。你在开发什么样的应用程序?一个简单的Windows窗体应用程序或更复杂的东西,比如Windows服务?它是一个简单的Windows窗体,有一个屏幕。我试图将它保存到其他地方,但它不起作用。使用VisualStudio2010,它会将图片保存在我的Dropbox中(我不知道为什么…),而使用2012,它不会保存。我有另一个理论。我更新了答案以向您显示代码。我尝试了您的代码,现在在代码保存的行中出现了“NullReferenceException was unhandled”。@Gedaym除非应用程序以管理员身份运行,否则对
C:\Anything.jpeg
的任何写入操作都将失败,如果您使用的是Windows Vista或更高版本。您说您在其他地方尝试过,但没有说在哪里,请尝试保存C:
的根以外的其他地方,看看是否有效。@Gedaym,很抱歉出现NullReferenceException。我输入了一个变量名。我再次编辑以更正它。