GDI Image::Save возвращает Win32Error

Я использую метод GDI Image::Save для сохранения изображений в файл в моем приложении. Я получаю ошибку состояния Win32Error (7) в нескольких случаях с 64-разрядной версией Vista. С вистой 32 бит работает нормально. а также эта проблема возникает случайно.

Не могли бы вы подсказать как решить проблему

заранее спасибо

С уважением Субби Редди


person subbi    schedule 04.11.2009    source источник
comment
Какое значение возвращает GetLastEror() при возврате ошибки Win32Error?   -  person gwell    schedule 05.11.2009


Ответы (1)


Один возможный случай, когда это происходит, — это когда основной поток изображения закрыт:

using ( var fs = new FileStream( filename, FileMode.Open ) ) 
    bmp = (Bitmap)Image.FromStream( fs );

Если вы сейчас попытаетесь сохранить bmp, может возникнуть эта ошибка. Ваша проблема может быть, конечно, совсем в другом.

Однако вы можете попытаться сохранить копию своего изображения вместо сохранения изображения напрямую, например:

using ( var tempBitmap = new Bimap( oldBitmap ) ) 
    tempBitmap.Save( ...... );
person Dan Byström    schedule 06.11.2009