Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум «Основы разработки приложений Windows» книга 1.DOC
Скачиваний:
107
Добавлен:
10.05.2014
Размер:
721.41 Кб
Скачать

Файл ресурсов

Файл ресурсов является текстовым файлом и имеет стандартное расширение .RC. В данной программе в него включено только описание меню; вообще же в файле ресурсов можно описывать диалоговые окна, растровые изображения, пиктограммы, курсоры, таблицы символьных строк и пр. Различные ресурсы описываются в файле ресурсов в специальных форматах, понятных для компилятора ресурсов, входящего в состав любой среды программирования, в частности, пакета Borland С++. Обработка исходного текста самой программы и исходного текста ресурсов происходит, можно сказать, параллельно (рис. 3.2): компилятор исходного текста программы обрабатывает файл .CPP, образуя двоичный объектный файл с расширением .OBJ, а компилятор ресурсов обрабатывает файл .RC, получая из него промежуточный файл с расширением .RES.

Рис. 3.2. Процесс создания выполнимого файла для программы с ресурсами

Далее компоновщик компонует файлы .OBJи .RES, собирая из них единый загрузочный файл с расширением .EXE, который включает в себя программные коды, данные и ресурсы. После образования загрузочного файла промежуточные файлы с расширениями .OBJи .RESуже не нужны; их вполне можно удалить, так как все необходимое для выполнения программы входит в файл .EXE.

Существенно, что элементы приложения, описанные в файле ресурсов (например, форматы меню и диалогов, а также тексты и рисунки) не разбросаны по загрузочному файлу, а сосредоточены в одном месте и хранятся в определенном формате (рис. 3.3). Это дает возможность специальным программам, понимающим этот формат, читать и даже модифицировать ресурсы непосредственно в загрузочном файле приложения – действие, совершенно невозможное в традиционных программах, не использующих понятие ресурсов.

Рис. 3.3. Возможное размещение ресурсов в загрузочном файле приложения

Преимущества, возникающие при выделении определенных объектов в файл ресурсов, носят многоплановый характер:

  • Программа требует меньше памяти, так как ресурсы могут загружаться (из файла .EXE) лишь по мере надобности. Если, например, в виде ресурсов хранятся строки аварийных сообщений, они могут подгружаться в память лишь в случае возникновения ошибок, при которых эти сообщения должны выводиться на экран, а при нормальном выполнении занимать место в памяти не будут.

  • Файл ресурсов проще выглядит и имеет бόльшую наглядность, чем исходный текст программы. Редактирование состава меню и диалоговых окон или содержимого текстовых строк значительно удобнее выполнять в отдельном файле ресурсов, чем в исходном тексте программы.

  • Использование ресурсов упрощает структуру и содержание программы, так как при описании, например, меню в файле ресурсов система берет на себя организацию и показ меню, а программист должен лишь обеспечить содержательную обработку команд меню.

  • Специальные инструментальные средства, разработанные для редактирования ресурсов, в частности входящая в состав IDE Borland C++ программа Resource Workshop (“мастерская ресурсов”), существенно облегчают разработку и редактирование меню, диалогов, пиктограмм и курсоров. То же можно сказать про средуMicrosoft Visual C++, в которую встроены средства визуального создания и редактирования ресурсов.

  • Ресурсы можно редактировать непосредственно в загрузочном файле приложения (с помощью упомянутого выше редактора ресурсов). Это, в частности, дает возможность переводить тексты сообщений и меню на другой язык, не имея исходных текстов приложений (так называемая локализация программных продуктов).

  • Ресурсы, например, изображения элементов управления, кнопок, курсоров, пиктограмм и пр. можно извлечь из загрузочного файла приложения, чтобы использовать их в другом приложении.