Показать сообщение отдельно
  #1  
Старый 22.02.2019, 19:36
Аватар для Lothlorien
Lothlorien Lothlorien вне форума
Новичок
 
Регистрация: 06.04.2011
Адрес: Солнечная система
Сообщения: 69
Версия Delphi: 7.0
Репутация: 12
Вопрос Безопасная загрузка битмапов

Всем привет!

Допустим, есть код, который загружает растровое изображение из файла в TBitmap:

Код:
SomeBitmap.LoadFromFile('somefile.bmp');

Если же юзер, например, попросит программу загрузить изображение из файла иного формата, то вылетит исключение EInvalidGraphic. Причем определять формат файла нам надо не по расширению имени, а по содержанию (файл может быть переименован, и расширение может отличаться от .bmp).
Выполнение в блоке "try .. except on E: EInvalidGraphics do ..." ничего не дает, исключение возникает все равно.

Не могу найти ничего по своей теме, потому спрошу здесь: существует ли какой-нибудь способ перед загрузкой битмапа удостовериться, действительно ли это битмап?
__________________
Ne timeas obscurum.
Ответить с цитированием