【发布时间】:2010-12-30 21:05:16
【问题描述】:
我正在尝试这样做,但程序抛出了这个异常:
在 mscorlib.dll 中发生了“System.IO.IOException”类型的未处理异常
附加信息:该进程无法访问文件“C:\Users\Roy\documents\visual studio 2010\Projects\Assignment3\Assignment3\bin\Debug\Images\Chrysanthemum.jpg”,因为它正被另一个进程使用.
有没有办法在它打开的时候使用它?
代码:
if (imgAddMessage.Source != null)
{
BitmapImage src = (BitmapImage)imgAddMessage.Source;
if (!Directory.Exists("Images"))
{
Directory.CreateDirectory("Images");
}
FileStream stream = new FileStream("Images/" + imageName, FileMode.Create, FileAccess.ReadWrite);
JpegBitmapEncoder encoder = new JpegBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(src));
encoder.Save(stream);
stream.Close();
}
【问题讨论】:
-
您能发布您的代码吗?它会有所帮助。
-
你能创建一个图像的副本来使用吗?
-
我假设您在尝试创建
FileStream时遇到了异常。该文件实际上是否在另一个程序中打开?或者也许在你的程序中?如果进程以独占访问权限打开文件,您将无法对其进行写入。