Exception on save image to stream
От: Ved Украина  
Дата: 18.11.02 15:19
Оценка:
Доброго времени суток! В коде


       .......
if(null != picture_Bear.Image)
   picture_Bear.Image.Dispose();
System.IO.MemoryStream st = new System.IO.MemoryStream();               // Если этот кусок кода заменить на 
picture_Base.Image.Save(st, System.Drawing.Imaging.ImageFormat.Gif);    // (Image)picture_Bear.Image = 
picture_Bear.Image = Image.FromStream(st);                              //    picture_Base.Clone(); 
st.Close();                                                             // то дела это не изменит 
picture_Bear.Width = picture_Bear.Height * 
                picture_Bear.Image.Width / picture_Bear.Image.Height;
if(null != stw)                                                         // Этот код тоже
   stw.Close();                                                         // можно удалить
stw = new System.IO.MemoryStream();                                     // все равно
picture_Bear.Image.Save(stw, System.Drawing.Imaging.ImageFormat.Gif);   // вот тут вывалится ошибка          (*)
stw = new System.IO.MemoryStream(st.ToArray());
       .......


В строке, отмеченной (*) вываливается ошибка "An unhandled exception of type 'System.Runtime.InteropServices.ExternalException' occurred in system.drawing.dll. Additional information: A generic error occurred in GDI+."

Код вызывается в обработчике нажатия одной из кнопок. Причем такой же код вызывается и в других местах кода и работает без ошибок. А тут ни с того ни с сего — на тебе.. Кто-нибудь сталкивался с похожей ситуацией?


P.S. Сорри за весьма "некрасивый" код — такое получилось после долгих попыток понять, в чем же дело....
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.