Какво е RES файл?
Файлът със суфикс или разширение .res може да принадлежи към много категории файлови формати. Тук обсъждаме файловия формат RES, който е C++ компилиран ресурсен скрипт; двоичен файл, създаден от Microsoft Resource Compiler (rc), който съдържа данни за ресурси; въз основа на съдържанието на файла с дефиниция на ресурси; от значение за основния софтуерен проект. Файлът .res обикновено се преформатира във файл с ресурсен обект, за да го свърже с изпълнимия файл на приложение.
RES файлов формат
Файловият формат RES принадлежи на Microsoft Resource Compiler (rc). Компилаторът на ресурси е инструмент, който компилира ресурси като курсори, икони, менюта и диалогови прозорци, които вашето приложение използва. Файловете с ресурси обикновено имат разширение .res; съдържа ресурси, като курсори, изображения и информация за версията. RES файл може да бъде 16 или 32-битов ресурсен файл.
Структура на ресурсния файл
Файлът с ресурси съдържа поредица от различни записи за ресурси. Всеки запис съдържа заглавка на ресурса и подходящи данни. Заглавката на ресурса обикновено е DWORD подравнена във файла и съдържа следното:
- DWORD за указване на размера на заглавката на ресурса
- DWORD за указване на размера на ресурсните данни
- Тип ресурс
- Името на ресурса
- Допълнителна информация за ресурса
Структурата на заглавката на ресурса определя формата на RES файла. Данните за ресурса следват заглавката на ресурса. Някои ресурси също добавят специфичен за ресурс модел на заглавка на група, за да предоставят информация за група ресурси. Следват някои от типовете записи на ресурси и тяхното описание:
Ресурси на таблицата на ускорителя
Таблицата на ускорителя е запис на ресурс в RES файл без групов хедър. Моделът ACCELTABLEENTRY дефинира всеки запис в таблицата на ускорителя. Един RES файл може да има множество ускорителни таблици.
Ресурси за курсор и икона
Въпреки това системата разглежда всяка икона и курсор като единичен файл, но те се съхраняват в RES файлове като група ресурси за икони или група ресурси за курсори. Файловите формати на ресурсите за икона и курсор са еднакви. Заглавката на група ресурси следва всички отделни компоненти на икона или група курсори в .res файла.
Ресурси за диалогов прозорец
Диалоговият прозорец също е реализиран като запис на ресурс в RES файла. Той съдържа един шаблон за заглавка на диалогов прозорец DLGTEMPLATE и един шаблон DLGITEMTEMPLATE за всяка конкретна контрола в диалоговия прозорец. Моделите DLGTEMPLATEEX и DLGITEMTEMPLATEEX обясняват формата на ресурсите на разширения диалогов прозорец.
Ресурси за шрифтове
Ресурсът на менюто съдържа шаблон MENUHEADER, последван от един или повече шаблони NORMALMENUITEM или POPUPMENUITEM, по един за всеки елемент от менюто в шаблона на менюто. Моделите MENUEX_TEMPLATE_HEADER и MENUEX_TEMPLATE_ITEM обясняват формата на разширените ресурси на менюто.
Ресурси за таблица със съобщения
Таблицата със съобщения се състои от форматиран текст за показване като съобщение за грешка или в поле за съобщение. Основният модел в ресурса на таблица със съобщения е структурата MESSAGE_RESOURCE_DATA.
Ресурси за версия
Основният шаблон в ресурс за версия е VS_FIXEDFILEINFO. Допълнителните модели включват VarFileInfo за съхраняване на данни, свързани с езикова информация, и StringFileInfo за персонализирана информация за низове.