PDA

View Full Version : خطای A generic error occurred in GDI+.



misoft.ir
شنبه 10 بهمن 1388, 11:00 صبح
سلام
بنده در کد زیر به مشکل برخوردم
مشکل از کجاست؟



MemoryStream ms = new MemoryStream();
pictureBox1.Image.Save(ms, pictureBox1.Image.RawFormat);
byte[] arrPic = ms.GetBuffer();

مشکل دومم اینه که وقتی عکس بزرگی را داخل پیکچر باکس قرار میدم برنامه خطا میگیره
فکر کنم خطای سوال اولی هم به سوال دومی مربوط میشه:لبخند:
با تشکر

rezatati
شنبه 10 بهمن 1388, 21:58 عصر
این خطا دلایل گوناگونی داره ازجمله عدم وجود سطح دسترسی کاربر به جایی که می خواد عمل ذخیره را انجام بده توی یه سایتی من این تیکه کد رو دیدم اینو امتحان کن و اگه برنامت چیز مهمی نیست اینجا آپلودش کن تا من یه نگه بهش بندازم و مشکلشو حل کنم من خودم هم با این ارور روبه رو شده بودم ولی تو برنامه من وقتی که یک فایل ایکون را از جایی پشت سر هم لود می کردم این ارور رو می داد این ارور یک مشکل کلی هستش و نمیشه گفت واقعا علت اصلی اون چیه حالا این کد رو امتحان کن تا بعد


lock(this)
{
//YOUR SAVE HERE
}

البته اطلاعات من تا اینجا قد می داد از اساتید اگه کسی راه حل اساسی میدونه بگن

misoft.ir
یک شنبه 11 بهمن 1388, 10:30 صبح
سلام
دوست عزیز کدش رو که گذاشتم
با این کد عکس رو تبدیل میکنم بعد توی دیتابیس ذخیرش میکنم
در یک پوشه با عکس های کوچیک مشکلی ندارم اما اگر سنگین باشه همین خطایی که در عنوان نوشتم در سطری که پررنگش کردم روی میده.
کد شما رو هم امتحان کردم ولی متاسفانه جواب نداد.
هرچی هست به کار با Streem ها بر میگرده که من ازش سررشته ندارم.

misoft.ir
یک شنبه 11 بهمن 1388, 13:13 عصر
سلام
با کمک دوستان با این کد مشکلم حل شد



MemoryStream ms = new MemoryStream();
System.Drawing.Image IMG = System.Drawing.Image.FromFile(آدرس تصویر لود شده در پیکچر باکس);
IMG.Save(ms, pictureBox1.Image.RawFormat);
byte[] arrPic = ms.GetBuffer();
ms.Close();