Я пытаюсь «восстановить» изображение и получаю сообщение об ошибке «Произошла общая ошибка в GDI +». Я немного обыскал эту ошибку, но пока не нашел решения! В большинстве предложений упоминается:
- Проверка того, что поток не используется или заблокирован (т. Е. Файловые потоки)
- Убедитесь, что поток не используется в течение всего времени жизни объекта (не должно быть так, как вы увидите ниже)
- Попытка воспроизвести объект в растровом объекте и использовать его для сохранения (у меня не получилось)
Код, который я использую, указан ниже:
using (Stream @imageStream = ResourceManager.CreateFile(finalResourceId, imageFileName))
{
using (MemoryStream ms = new MemoryStream(imageFile.ResourceObject))
{
using (Image img = Image.FromStream(ms))
{
imageWidth = img.Width;
imageHeight = img.Height;
img.Save(@imageStream, img.RawFormat);
}
}
}
В приведенном выше коде ResourceManager.CreateFile
возвращает эквивалент MemoryStream
, поэтому не должно быть никаких "проблем с ресурсами".
Я не думаю, что кто-то еще сталкивался с этой проблемой и может поделиться своим решением? Заранее спасибо за помощь!