Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как уничтожить объект класса BitmapSource

11K
26 апреля 2010 года
amorphius
22 / / 13.03.2006
В программе обрабатываю IPTC поля изображений. На этапе чтения метаинформации использую объект класса BitmapSource. Потом на записи новой метаинформации в тот же файл выскакивает исключение "Файл занят другим процессом". Я конечно еще отображал рисунок в pictureBox, но гугл подсказал, что эта проблема решается с использованием метода Clone() класса Image, чтобы оригинальный рисунок не использовался никаким процессом. Уверен что мешает класс BitmapSource, потому что при комментировании данной строки новая метаинформация успешно пишется в файл. Никаких функций вроде Dispose() в класее BitmapSource я не нашел. Приравнивание к null тоже ничего не дало.
 
Код:
BitmapSource img = BitmapFrame.Create(new Uri(filename));
11K
27 апреля 2010 года
amorphius
22 / / 13.03.2006
тема закрыта, нужно было просто создавать не с помощью Uri, а создавать FileStream, а потом его закрывать
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог