Цитата
Если подсунуть findimage адрес не левого верхнего пикселя, то результатом будет -5, ошибка обработки искомого изображения.
Вообще по идее такая фишка не должно прокатывать по той причине, что обязательным атрибутом для бмп является его размер, т.к. определить его невозможно по каким-либо косвенным признаком(например, как для строки \0). Битовая маска может содержать в себе любой порядок байт, соответственно пилоту необходимо задание размера. Бмп в памяти выглядит примерно так:
атрибут
атрибут
атрибут
атрибут
размер
количество байт атрибутов(для вычисления адреса начала битовой маски)атрибут
атрибут
атрибут
битовая маскаПоскольку пилот скорее всего приводит бмп к единообразию либо допускает использование только определенный формата бмп (их много, из-за этого кстати могли быть проблемы возникавшие с другими редакторами.), то количество байт между:
размер
количество байт атрибутов(для вычисления адреса начала битовой маски)и
битовая маскаскорее всего статично и отсылая в пилот адрес начала битовой маски, он просчитывает смещение и получает размер. Если же мы просто уведем в сторону от первого пикселя адрес, то размер мы уже не получим нормальны и пойдет бред.