نوشته شده توسط
ehsan.rahimi
با سلام خدمت اساتید.
من یک فرم دارم که اطلاعات یک شخص رو ثبت و ویرایش میکنم.این اطلاعات شامل عکس شخص هم هست.موقع ثبت اطلاعات مسیر عکس رو داخل دیتابیس و خود عکس رو داخل پوشه ای در مسیر برنامه با نام ایدی شخص مثلا 10000.jpg ذخیره میکنم.مشکلم داخل قسمت ویرایش هستش که چطور عکس جدید رو با عکس قدیم با همین اسم جایگزین کنم.
خطای because it is being used by another process میده
با سلام
برای اینکار عکس رو بصورت Stream باز کنید
براش یک متد نوشتم به شکل زیر :
private void OpenImageStream(string path, PictureBox PicBox)
{
if (System.IO.File.Exists(path))
{
System.IO.FileStream fs = new FileStream(path, System.IO.FileMode.Open);
pictureBox1.Image = Image.FromStream(fs);
fs.Close();
}
}
برای ذخیره هم میتونید از این کد استفاده کنید
pictureBox1.Image.Save(@"C:\test.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
چون در کد قبلی Close شده، دیگه با اون خطا روبرو نمیشید
موفق باشید