Можно считать, что ресурс - это файл с данными, который до-
писывается в конец исполняемого файла прикладной программы. Если
ресурс определен корректно, то соответствующие ресурсу данные мож-
но изменять не затрагивая кодов прикладной программы.
Прикладные программы Windows включают в свой состав опреде-
ленное количество графических элементов. В частности некоторая
прикладная программа может изменять форму графического курсора в
зависимости от режима работы и использовать для этой цели десять
различных изображений. Вместо того, чтобы включать данные, опреде-
ляющие форму курсора непосредственно в исходный текст программы,
их можно выделить в отдельный блок и хранить как ресурс, который
будет загружаться в память по мере необходимости. Преимущества
последнего подхода включают в себя:
+---------------------------------------------------------------+
¦ - ¦_______________________Options_____________________________¦
+---------------------------------------------------------------¦
¦ ¦
¦ +-Shape--------+ +-Colors------------------------------+ ¦
¦ ¦ ¦ ¦ +-+ +-+ ¦ ¦
¦ ¦ O Square ¦ ¦ ¦X¦ Blue ¦ ¦ Red ¦ ¦
¦ ¦ ¦ ¦ +-+ ---- +-+ ¦ ¦
¦ ¦ 0 Circle ¦ ¦ +-+ +-+ ¦ ¦
¦ ¦ ¦ ¦ ¦X¦ Yellow ¦ ¦ White ¦ ¦
¦ ¦ O Triangle ¦ ¦ +-+ +-+ ¦ ¦
¦ ¦ ¦ +-------------------------------------+ ¦
¦ +--------------+ ¦
¦ ¦
¦ ____OK_____ __Cancel___ ___Help____ ¦
¦ ¦
+---------------------------------------------------------------+
Рис. 2.1 Типичное диалоговое окно
Все диалоговое окно и все управляющие элементы в нем (вклю-
чая командные кнопки, кнопки с независимой фиксацией (блоки про-
верки) и т. д. определяются в прикладной программе Windows как
ресурсы.
В общем случае ресурсы прикладной программы Windows отделя-
ются от кода программы, что позволяет вам вносить существенные
изменения в интерфейс с пользователем без необходимости открывать
файл, содержащий код программы.
Предположим, например, что вы работаете с бухгалтерской
прикладной программой Windows. Вы можете записать исходный код,
реализующий алгоритм вашей прикладной программы, в отдельной фай-
ле, и даже выполнить его компиляцию отдельной от ресурсов прог-
раммы. Чтобы изменить вывод программы, вы (или кто-то другой, от-
ветственный за интерфейс с пользователем) можете модифицировать
эти ресурсы и создать новые, не беспокоясь о их влиянии на соот-
ветствующие бухгалтерские алгоритмы.
Кроме того, поскольку различные прикладные программы исполь-
зуют один и тот же набор ресурсов, вам не потребуется изобретать
заново диалоговые окна, пиктограммы и специальные курсоры. Вместо
этого вы каждый раз можете использовать их повторно.