Ресурсы приложения
Рассмотрим процесс включения некоторых из перечисленных выше типов ресурсов в состав приложения. Ресурсы типа меню, акселераторы меню и шаблон диалога будут рассмотрены позднее при изучении соответствующих тем.
Для создания таблицы текстовых строк файл описания ресурсов должен включать оператор STRINGTABLE :
STRINGTABLE [параметры загрузки] [тип памяти]
BEGIN
StringID , ASCIIZ - строка
. . .
END
Операторы BEGIN и END определяют границы таблицы строк в файле определения ресурсов. Между ними находятся строки с идентификаторами StringID . Идентификаторы строк, как и любых других ресурсов, являются целыми константами, заданными непосредственно в операторе STRINGTABLE или через #define (при этом обычно используется префикс IDS_ перед именем). В качестве параметров загрузки можно указывать значения PRELOAD (ресурс загружается в память одновременно с загрузкой приложения) или LOADONCALL (используется по умолчанию , ресурс загружается в память при обращении к нему со стороны приложения). Тип памяти, выделяемой при загрузке ресурса , может быть FIXED (ресурс будет находиться в памяти по постоянному адресу) или MOVEABLE (ресурс может перемещаться при выполнении Windows дефрагментации памяти). Дополнительно для перемещаемого ресурса можно указать тип DISCARDABLE (ресурс может быть размещен в виртуальной памяти). По умолчанию используется тип MOVEABLEDISCARDABLE. Возможно также указание параметра PURE, блокирующего возможность модификации участка памяти, занятого ресурсом (read only).
Для загрузки строки в оперативную память необходимо использовать функцию LoadString, имеющую следующий прототип :
предыдущаяследующая