Ресурсы курсора и значка
Система обрабатывает каждый значок и курсор как отдельно взятый файл. Однако, они сохраняются в .res файлах и в исполняемых файлах как группа ресурсов значка или группы ресурсов курсоров. Форматы файлов значка и ресурсов курсора - похожи. В .res файле заголовок группы ресурса следует за всеми специальными значками или компонентами группы курсора.
Формат каждого компонента значка очень напоминает формат файла .ICO. Каждое изображение значка сохраняется в структуре BITMAPINFO, сопровождаемое аппаратно-независимыми, формата DIB, битами маски XOR цвета значка. Монохромные биты DIB маски AND значка, следуют за битами DIB цвета.
Формат каждого компонента курсора напоминает формат файла .CUR. Каждое изображение курсора сохраняется в структуре BITMAPINFO, сопровождаемое монохромными битами DIB маски XOR курсора, а затем монохромными битами DIB маски AND курсора.
Обратите внимание! на то, что имеется различие в точечных рисунках этих двух ресурсов: значки, в отличие от курсора маски XOR, не имеют битов DIB цвета. |
Хотя точечные рисунки масок курсора являются монохромными и не имеют заголовков DIB или таблиц цветов, тем не менее биты находятся в формате DIB относительно выравнивания и направления.
Заголовок группы и для ресурсов значка, и для ресурсов курсора состоит из структуры NEWHEADER плюс одна или несколько структур RESDIR. Для каждого значка или курсора имеется одна структура RESDIR. Заголовок группы содержит информацию необходимую приложению, чтобы выбрать для показа правильный значок или курсор. И заголовок группы, и данные, которые повторяются для каждого значка или курсора в группе, имеют фиксированную длину. Это дает возможность приложению получить случайный доступ к информации.