Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Borland C++ 3.0

                  Глава 3. Работа с проектами и ресурсами
       -----------------------------------------------------------------

            В данной главе описывается окно проекта.  Здесь  поясняется,
       как управлять  выводом  ресурсов в данном окне и как выбирать ре-
       сурсы из данного окна для редактирования.  Эта  глава  охватывает
       также некоторые общие темы,  касающиеся ресурсов, рассказывается,
       как добавлять и удалять их из проектов, сохранять их, и как рабо-
       тать с идентификаторами.

            Как уже  пояснялось в Главе 2,  проект - это набор из одного
       или более ресурсов.  Проект записывается в файл, который содержит
       один или более ресурсов,  или ссылается на файлы,  содержащие ре-
       сурсы (или и то,  и другое). Обычно файл проекта представляет со-
       бой  файл  записей  компилятора ресурсов (.RC).  Рассмотрим снова
       файлы ресурсов для примера проекта, описанного в Главе 3.

            Файл .RC - это центральный файл проекта,
            содержащий ссылки на другие файлы.

            -------------¬                      ---------------¬
            ¦ myproj.rc  ¦   -------------------+ mycursor.cur ¦
            ¦ .......... ¦   ¦ Файл .CUR содер- ¦ ............ ¦
            ¦ .......... ¦   ¦ жит двоичные     ¦ ............ ¦
            ¦ ..........-+---- данные, описыва- ¦ ............ ¦
            ¦ .......... ¦     ющие курсор.     ¦ ............ ¦
            ¦ ..........-+---¬                  ¦ ............ ¦
            ¦ .......... ¦   ¦                  ¦ ............ ¦
            L-----T-------   ¦                  L---------------
                  ¦          ¦                  ---------------¬
                  ¦          L------------------+ mybitmap.bmp ¦
                  ¦          Файл .BMP содержит ¦ ............ ¦
           -------+-------¬  двоичные данные,   ¦ ............ ¦
           ¦ myproj.h     ¦  описывающие битовое¦ ............ ¦
           ¦ ............ ¦  изображение.       ¦ ............ ¦
           ¦ ............ ¦                     L---------------
           ¦ ............ ¦   Файл .H содержит определения
           ¦ ............ ¦   #define, которые вы можете использовать
           L---------------   для присваивания ресурсам смысловых
                              имен.

            Рис. 3.1 Файл MYPROJ.RC


            Если вы работаете с проектом,  Пакет  разработчика  ресурсов
       выводит на экран окно проекта. На следующем рисунке показано, как
       окно проекта выглядит для файла MYPROJ.RC, если вы просматриваете
       ресурсы, сгруппированные по имени файла.

       ----T---------------------------------------------------T---T---¬
       ¦ - ¦     с/:workshop/myproj.rc                         ¦ ^ ¦ v ¦
       +---+---------------------------------------------------+---+---+
       ¦-c:/WORKSHOP/myproj.rc-----------------------------------------¦
       +-------------------------------------------------------------T-+
       ¦      include typical.rc                                     ¦^¦
       ¦           #include titled.h                                 +-+
       ¦           DIALOG: DIALOG_1                                  ¦-¦
       ¦           MENU: MENU_1                                      ¦-¦
       ¦           STRINGTABLE: MENU_FILE                            ¦-¦
       ¦                                                             ¦-¦
       ¦      arrow.cur                                              ¦-¦
       ¦           CURSOR: CURSOR_1                                  ¦-¦
       ¦                                                             ¦-¦
       ¦      telecomm.ico                                           ¦-¦
       ¦           ICON: ICON_1                                      ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             +-+
       ¦                                                             ¦v¦
       L-------------------------------------------------------------+--

            Рис. 3.2 Окно проекта для файла MYOPROJ.RC
                           Создание нового проекта
       -----------------------------------------------------------------

            Для создания нового проекта сделайте следующее:

            1. Выберите команду File¦New  Project  (Файл¦Новый  проект).
               Пакет  разработчика  ресурсов выводит диалоговое окно New
               Project (Новый проект):

       ----T-----------------------------------------------------------¬
       ¦ - ¦                   New Project                             ¦
       +---+-----------------------------------------------------------+
       ¦     Project file type                                         ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦ >o  .RC¦              < .CUR              < .BMP      ¦ ¦
       ¦     ¦     ----                                              ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦  <  .RES              < .ICO              < .FNI      ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     L-------------------------------------------------------- ¦
       ¦                                                               ¦
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.2 Окно проекта для файла MYOPROJ.RC

                 Используйте данное диалоговое окно для выбора типа фай-
                 ла, на котором основывается проект.  В большинстве слу-
                 чаев желательно основывать проекты на файле  .RC,  пос-
                 кольку данный тип файла вам добавлять любой ресурс, ко-
                 торый вы захотите.  Однако,  вы можете выбрать один  из
                 следующих файлов:

               - файл .RES для работы с файлом двоичных ресурсов;

               - файл .CUR для создания проекта, содержащего курсор;

               - файл .ICO для создания проекта,  содержащего пиктограм-
                 му;

               - файл  .BMP  для  создания проекта,  содержащего битовое
                 изображение;

               - файл .FNT  для  создания  проекта,  содержащего  только
                 шрифты.

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

            Пакет разработчика ресурсов выводит вам в окне описания про-
       екта новый  проект без заголовка.  Имя проекта можно задать любую
       из команд  File¦Save  (Файл¦Сохранения).  Создать  новые  ресурсы
       можно с  помощью команды Resource¦New (Ресурс¦Новый),  а добавить
       новый или существующий ресурс,  записанный в других файлах, можно
       с помощью  команды  File¦Add to Project (Файл¦Добавление к проек-
       ту).


       ----T---------------------------------------------------T---T---¬
       ¦ - ¦                Resource Workshop                  ¦ ^ ¦ v ¦
       +---+---------------------------------------------------+---+---+
       ¦=  File Edit Resource Control Options Window Help          ¦   ¦
       +-------------------------T---------------------------------+-T-+
       ¦ New project...          ¦      ---T--------------T---T---¬  ¦^¦
       ¦ Open project            ¦      ¦ -¦  untitled.rc ¦ ^ ¦ v ¦  +-+
       ¦-Save-project------------¦      +--+--------------+---+-T-+  ¦-¦
       ¦ Save file as...         ¦      ¦untitled.rc------------¦^¦  ¦-¦
       ¦ Close all               ¦      ¦                       +-+  ¦-¦
       +-------------------------+      ¦                       ¦-¦  ¦-¦
       ¦ Add to project...       ¦      ¦                       ¦-¦  ¦-¦
       ¦ Exract from project     ¦      ¦                       ¦-¦  ¦-¦
       +-------------------------+      ¦                       ¦-¦  ¦-¦
       ¦ Prefverences...         ¦      ¦                       ¦-¦  ¦-¦
       +-------------------------+      ¦                       ¦-¦  ¦-¦
       ¦ Exit                    ¦      ¦                       +-+  ¦-¦
       +--------------------------      ¦                       ¦v¦  ¦-¦
       ¦                                L-----------------------+--  ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             ¦-¦
       ¦                                                             +-+
       ¦                                                             ¦v¦
       +-------------------------T-----------------------------------+-+
       ¦ Ready                   ¦ Modify                              ¦
       L-------------------------+-----------------------------------
---

            Рис. 3.4  Окно  проектов  с  выделенными  командами  Save  и
       Project Selected

            Resource Workshop  -  Пакет  разработчика  ресурсов;  File -
       файл; Edit - редактирование;  Resource - ресурс; Control - управ-
       ление; Options - параметры;  Window - окно;  Help - справка;  New
       project - новый проект;  Оpen project -  открытие  проекта;  Save
       project - сохранение проекта;  Save file as - сохранение под име-
       нем; Close all - закрыть все;  Add to project - добавление к про-
       екту; Exract from project - извлечение из проекта; Prefverences -
       предпочтения; Exit - выход; Ready - готов; Modify - модификация.
                Открытие существующего файла описания проекта
       -----------------------------------------------------------------

            Существующим файлом  описания  проекта  может быть тот файл,
       который вы создали с помощью  Пакета  разработчика  ресурсов  или
       файл .RC,  созданный  с помощью другого программного обеспечения.
       Вы можете также работать с ресурсами в любой прикладной  програм-
       ме, разработанной для Windows версии 3.0 или старше,  даже если у
       вас нет доступа к исходному коду. Если у вас есть доступ только к
       выполняемому файлу,  Пакет разработчика ресурсов может декомпили-
       ровать встроенные в этот файл ресурсы,  благодаря чему вы  можете
       внести в них изменения.

            Чтобы открыть существующий файл проекта,  нужно сделать сле-
       дующее:

            1. Выбрать команду File¦Open project (Файл¦Открыть файл про-
               екта).  Пакет разработчика ресурсов выводит при этом диа-
               логовое окно Open File (Открытие файла):


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   Open FIle                               ¦
       +---+-------------------------------------------T---------------+
       ¦  ------------------------------------------¬  ¦               ¦
       ¦  ¦           -----------------------------¬¦  ¦               ¦
       ¦  ¦ File Name ¦ .rc                        ¦¦  ¦               ¦
       ¦  ¦           L-----------------------------¦  ¦               ¦
       ¦  ¦           ---------------------------T-¬¦  ¦ ------------¬ ¦
       ¦  ¦ File type ¦ RC resource script       ¦v¦¦  ¦ ¦  _        ¦-¦
       ¦  ¦           L--------------------------+--¦  ¦ ¦ V    OK   ¦-¦
       ¦  L------------------------------------------  ¦ L-------------¦
       ¦                                               ¦   ------------¦
       ¦   -Path---c:\products\rwrkshop--------------  ¦               ¦
       ¦                                               ¦               ¦
       ¦  --------------------¬---------------------¬  ¦               ¦
       ¦  ¦Files              ¦¦ Directories        ¦  ¦               ¦
       ¦  ¦---------------T-¬ ¦¦-----------------T-¬¦  ¦               ¦
       ¦  ¦¦ ¦ typicalrc  ¦^¦ ¦¦¦ П ...          ¦^¦¦  ¦ ------------¬ ¦
       ¦  ¦¦              +-+ ¦¦¦ П program      +-+¦  ¦ ¦           ¦-¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П user         ¦-¦¦  ¦ ¦ X  Cancel ¦-¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П A            ¦-¦¦  ¦ L-------------¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П B            ¦-¦¦  ¦   ------------¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П C            ¦-¦¦  ¦               ¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П F            ¦-¦¦  ¦               ¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П G            ¦-¦¦  ¦               ¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П H            ¦-¦¦  ¦               ¦
       ¦  ¦¦              ¦-¦ ¦¦¦ П I            ¦-¦¦  ¦ ------------¬ ¦
       ¦  ¦¦              +-+ ¦¦¦ П program      +-+¦  ¦ ¦           ¦-¦
       ¦  ¦¦              ¦v¦ ¦¦¦ П program      ¦v¦¦  ¦ ¦ ?  Help   ¦-¦
       ¦  ¦L--------------+-- ¦¦L----------------+--¦  ¦ L-------------¦
       ¦  ¦                   ¦¦                    ¦  ¦   ------------¦
       ¦  L--------------------L---------------------  ¦               ¦
       ¦                                               ¦               ¦
       ¦                                               ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.5 Диалоговое окно Open File

            Open File  -  открыть  файл;  File name - имя файла;  Path -
       маршрут; Files - файлы; Directories - каталоги.

               Чтобы увидеть все типы файлов, которые вы можете открыть,
               щелкните  кнопкой "мыши" на стрелке окна списка справа от
               File Type.  Если для формирования ресурсов вы используете
               Пакет разработчика ресурсов,  в большинстве случаев рабо-
               тать приходится с файлами .RC.  Однако вы можете  открыть
               файл любого из перечисленных типов. Если вы откроете дво-
               ичную библиотеку (файл .EXE, .CUR, .ICO или .RES), то Па-
               кет  разработчика ресурсов декомпилирует этот файл, чтобы
               вы могли внести изменения.

                  Примечание: Если вы работаете с декомпилированным дво-
               ичным  файлом,  то идентификаторы использовать нельзя.  В
               этих файлах для ресурсов можно использовать только  цело-
               численные идентификаторы.

               Если в текстовом  окне  имени  файла  вы наберете одно из
               стандартных расширений (вместо выбора типа файла из спис-
               ка  и автоматического выбора расширения Пакетом разработ-
               чика ресурсов), то Пакет разработчика ресурсов присваива-
               ет файлу соответствующий тип. Однако, если вы используете
               нестандартное расширение (например, .MNU для файла меню),
               то  перед загрузкой файла нужно внимательно выбирать кор-
               ректный тип файла из списка File Type.  (В  случае  файла
               .MNU,  если ресурс представляет собой меню,  записанное в
               виде записи ресурса,  типом файла должен быть RC Resource
               Script).

            2. С  помощью  следующих  действий задайте содержащий проект
               файл, который вы хотите открыть:

               - Наберите имя файла и нажмите Enter.

                 Если файл не находится в текущем каталоге,  при  наборе
                 имени  файла  нужно  также задавать маршрут.  Например,
                 можно набрать: C:\TEST\MYPROJ.RC.

               - Выберите файл из списка файлов Files. Например, если вы
                 хотите  открыть  C:\TEST\MYPROJ.RC,  то выберите в File
                 Type .RC,  выберите соответствующую пиктограмму папки в
                 Directories,  и  после  вывода  каталога  TEST выберите
                 MYPROJ.RC.

            3. Пакет разработчика ресурсов не зависит от того, использу-
               ется в качестве файла проекта двоичный файл или файл, со-
               держащий данные ресурсов.

               - Если проект представляет собой двоичный файл (выполняе-
                 мый файл, файл .RES или файл DLL), то Пакет разработчи-
                 ка ресурсов декомпилирует ресурсы и выводит вам состоя-
                 ние в левой части нижней строки экрана.

               - Если проект состоит из основного  файла  .RC  и  других
                 файлов,  содержащих данные ресурсов (как это обычно бы-
                 вает),  или одного файла ресурсов,  содержащего  данные
                 ресурсов,  Пакет  разработчика  ресурсов считывает файл
                 проекта для определения всех файлов  в  проекте.  Пакет
                 разработчика  ресурсов  просматривает затем все файлы в
                 соответствии со ссылками на любые  дополнительные файлы
                 и компилирует каждый ресурс,  сообщая о ходе компиляции
                 в диалоговом окне состояния Compile Status.


       ----T-----------------------------------------------------------¬
       ¦ - ¦                     Compile Status                        ¦
       +---+-----------------------------------------------------------+
       ¦                                                              ¦¦
       ¦   -----------------------------------------------¬           ¦¦
       ¦   ¦ Status:  Compiling DIALOG: dlg_SaveAs        ¦           ¦¦
       ¦   L-----------------------------------------------           ¦¦
       ¦                                                              ¦¦
       ¦   Files                                                      ¦¦
       ¦   -----------------------------------------------¬           ¦¦
       ¦   ¦ Main:  rwpdemo.rc                            ¦           ¦¦
       ¦   ¦ Current: rwpdemo.rc                          ¦           ¦¦
       ¦   L-----------------------------------------------           ¦¦
       ¦                                                              ¦¦
       ¦   Statistics         Total        Current                    ¦¦
       ¦   -----------------------------------------------¬           ¦¦
       ¦   ¦ Lines:            233               93       ¦           ¦¦
       ¦   L-----------------------------------------------           ¦¦
       ¦                                                              ¦¦
       ¦---------------------------------------------------------------¦
       ¦                                                               ¦
       ¦                                                               ¦
       ¦                                                               ¦
       ¦                         ------------¬                         ¦
       ¦                         ¦           ¦-                        ¦
       ¦                         ¦ X  Cancel ¦-                        ¦
       ¦                         L-------------                        ¦
       ¦                           ------------                        ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.5 Диалоговое окно Compile Status для файла rwpdemo.rc

            Compile Status   -  состояние  компиляции;  Files  -  файлы;
       Statistics - статистика;  Tolal - всего строк;  Current - текущая
       строка; Maint - основной файл;  Cancel - отмена;  Current - теку-
       щий.

                 Для отмены операции  вы  можете  активизировать  кнопку
                 Cancel.

                 Если компилятор обнаруживает ошибку, Пакет разработчика
                 ресурсов выводит диалоговое окно Compiler Error (Ошибка
                 компилятора),  в котором вам выводится ошибка и строка,
                 на которой она обнаружена.

       ----T-----------------------------------------------------------¬
       ¦ - ¦                     Compiler Error                        ¦
       +---+-------------------------------------------T---------------+
       ¦  ------------------------------------------¬  ¦               ¦
       ¦  ¦ Error id   742                          ¦  ¦               ¦
       ¦  ¦ Error text Cannot open File:tpwdemoc.rc ¦  ¦               ¦
       ¦  ¦                                         ¦  ¦               ¦
       ¦  ¦ File name tpwdemoc.rc                   ¦  ¦ ------------¬ ¦
       ¦  ¦                                         ¦  ¦ ¦ -¬  Run   ¦-¦
       ¦  ¦ Line number 1                           ¦  ¦ ¦ ~\  Editor¦-¦
       ¦  L------------------------------------------  ¦ L-------------¦
       ¦                                               ¦   ------------¦
       ¦                                               ¦               ¦
       ¦  ----------------------------------------T-¬  ¦               ¦
       ¦  ¦1:#include "tpwdemoc.pas"              ¦^¦  ¦               ¦
       ¦  ¦2:                                     +-+  ¦               ¦
       ¦  ¦3:men_Maint MENU                       ¦-¦  ¦ ------------¬ ¦
       ¦  ¦4:BEGIN                                ¦-¦  ¦ ¦           ¦-¦
       ¦  ¦5:     POPUP "&File"                   ¦-¦  ¦ ¦ X  Cancel ¦-¦
       ¦  ¦6:     BEGIN                           ¦-¦  ¦ L-------------¦
       ¦  ¦                                       ¦-¦  ¦   ------------¦
       ¦  ¦                                       +-+  ¦               ¦
       ¦  ¦                                       ¦v¦  ¦               ¦
       ¦  +-T-----------------------------------T-+-+  ¦               ¦
       ¦  ¦>¦-----------------------------------¦<¦ ¦  ¦ ------------¬ ¦
       ¦  L-+-----------------------------------+-+--  ¦ ¦           ¦-¦
       ¦                                               ¦ ¦ ?  Help   ¦-¦
       ¦  ------------------------------------------¬  ¦ L-------------¦
       ¦  ¦              --------------------------¬¦  ¦   ------------¦
       ¦  ¦ Text Editor  ¦notapad.exe              ¦¦  ¦               ¦
       ¦  ¦              L--------------------------¦  ¦               ¦
       ¦  L------------------------------------------  ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.7 Диалоговое окно Compile Error для файла rwpdemo.rc

            Compile error - ошибка компиляции;  Error id - идентификатор
       ошибки; Error text Cannot open File:tpwdemoc.rc -  текст  ошибки:
       невозможно открыть файл; File name - имя файла; Line number - но-
       мер строки; Text editor - текстовый редактор; Run Editor - запуск
       редактора; Cancel - отмена; Help - справка.

                 Чтобы отредактировать текстовый файл с помощью внешнего
                 текстового редактора,  заданного в Preferences, активи-
                 зируйте командную кнопку Run Editor (Запуск редактора).
                 В текстовом окне Text Editor  вы  можете  также  задать
                 другой редактор.

                 Когда выводится окно редактора,  внесите изменения, за-
                 тем  сохраните изменения и выйдите из редактора.  После
                 этого нужно перезагрузить проект.

            4. Когда проект скомпилирован или декомпилирован, Пакет раз-
               работчика ресурсов выводит на экран окно проекта со всеми
               перечисленными в нем ресурсами.

               Если вы откроете файл RWPDEMO.RC,  то  увидите  следующее
               окно проекта:

                  ----T---------------------------------T-T-¬
                  ¦ - ¦       rwpdemo.rc                ¦^¦v¦
                  +---+---------------------------------+-+-+
                  ¦ BITMAP                                ¦^¦
                  ¦     BITMAP_1                          +-+
                  ¦     bmp_StatusLine                    ¦-¦
                  ¦ MENU                                  ¦-¦
                  ¦     men_Main                          ¦-¦
                  ¦-DIALOG--------------------------------¦-¦
                  ¦     DIALOG_5                          ¦-¦
                  ¦     dlg_Open                          ¦-¦
                  ¦     dlg_SaveAs                        +-+
                  ¦                                       ¦v¦
                  L---------------------------------------+--

            Рис. 3.8 Окно проекта
                         Использование окно проекта
       -----------------------------------------------------------------

            Пакет разработчика  ресурсов выводит окно проекта при откры-
       тии нового или существующего проекта.

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

            В существующем проекте вы можете видеть:

            - полный список файлов проекта;

            - типы ресурсов, содержащихся в каждом файле;

            - если файл содержит данные  ресурсов  (не  является  файлом
              .EXE, .RES  или .DLL),  то выводятся связанные с ресурсами
              идентификаторы (определения #define или константы).

                  Примечание: Пример окна проекта см. на Рис. 3.8.

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

                       Вывод информации в окне проекта
       -----------------------------------------------------------------

            Чтобы определить вывод информации в окне проекта, используй-
       те команду View (Просмотр).

             ---------------------------------¬
             ¦---By-file----------------------¦ По файлам
             ¦ ^ By type                      ¦ По типу
             +--------------------------------+
             ¦   Show identifiers             ¦ Вывод идентификаторов
             ¦ ^ Show resources               ¦ Вывод ресурсов
             ¦   Show items                   ¦ Вывод элементов
             +--------------------------------+
             ¦ ^ Show unused types            ¦ Вывод неиспользуемых
             L--------------------------------- типов

            Рис. 3.9 Меню View

                        Параметр By File (По файлам)
       -----------------------------------------------------------------

            Группы ресурсов выводятся в соответствии с файлами,  в кото-
       рых они находятся.

            Выберите By File,  чтобы видеть все имена файлов, входящих в
       ваш проект.  В окне проекта все ресурсы и имена файлов перечисля-
       ются в том порядке,  в котором они встречаются в исходных файлах.
       Пакет разработчика ресурсов в окне проекта  показывает, сохранены
       ли ресурсы  в  файле описания проекта,  или они являются внешними
       файлами, как показано на следующем рисунке:

                                     Окно проекта
        Ресурс ICON  нахо- ---------------------------------¬
        дится в файле про- ¦          myproj.rc             ¦
        екта и  записан  в +--------------------------------+
        виде записи ресур- ¦myproj.rc                       ¦
        са.             ¦  ¦  DIALOG: my_db                 ¦
                        L--+-<ICON: my_ico                  ¦
                           ¦  iconfile.ico                  ¦
                           ¦    ICON:my_ico1 >--------------+--¬
                           ¦                                ¦  ¦
                           L---------------------------------  ¦
                                                               ¦
                                     Данный ресурс пиктограммы находится
                                     в  отдельном  файле  ICONFILE.ICO и
                                     записан в двоичном формате (как все
                                     ресурсы битовых изображений),  хра-
                                     нящиеся в виде внешних файлов.

            Рис. 3.10 Окно проекта, показывающее ресурсы по файлам

                         Параметр By Type (По типу)
       -----------------------------------------------------------------

            Группы ресурсов выводятся по типам,  например,  пиктограммы,
       меню, диалоги, идентификаторы и т.д.

            Выбирайте By  Type (и Show Resources),  если вы хотите полу-
       чить список всех ресурсов в соответствии с типом ресурсов,  а  не
       именами файлов.  В  окне  проекта все ресурсы проекта выводятся в
       данном порядке:  битовые массивы  (изображения),  меню,  диалоги,
       строковые таблицы,  акселераторы,  данные ресурсов, курсоры, пик-
       тограммы и все ресурсы,  определенные пользователем. После списка
       ресурсов выводятся все идентификаторы проекта (если вы установили
       в меню View параметр Set Identifiers).

                                 Окно проекта
                      ---------------------------------¬
                      ¦          myproj.rc             ¦
                      +--------------------------------+
                      ¦ DIALOG                         ¦
                      ¦    my_db                       ¦
                      ¦ ICON                           ¦
                      ¦    my_ico                      ¦
                      ¦    my_ico1                     ¦
                      ¦                                ¦
                      L---------------------------------

            Рис. 3.11 Окно проекта, показывающее ресурсы по типу

              Параметр Show Identifiers (Вывод идентификаторов)
       -----------------------------------------------------------------

            Выводятся все идентификаторы  проекта  (определения  #define
       или константы).  Если вы хотите видеть в окне проекта идентифика-
       торы, выключите эту команду.



                  Параметр Show Resources (Вывод ресурсов)
       -----------------------------------------------------------------

            Выводятся имена  отдельных  ресурсов,  например,   Cursor_1,
       MY_Icon, PB_BITMAP и т.д.

            Выключите данный параметр, если вы хотите видеть только име-
       на файлов без списка содержащихся в этих файлах  ресурсов  (нужно
       включить By File), или если вам хочется просмотреть идентификато-
       ры (нужно включить Show Identifiers) и вы хотите  уменьшить объем
       выводимой информации.

                 Примечание: Если  параметр Show Resources выключен,  то
             выбирать и редактировать ресурсы, определенные в файле про-
             екта нельзя.

                    Параметр Show Items (Вывод элементов)
       -----------------------------------------------------------------

            В окне проекта выводится еще один уровень детализации. Когда
       данный параметр включен, Пакет разработчика ресурсов выводит эле-
       менты в отдельных ресурсах (например,  POPUP и MENUITEM,  опреде-
       ленные в ресурсу меню).

           Параметр Show Unused Types (Вывод неиспользуемых типов)
       -----------------------------------------------------------------

            Выводятся все возможные типы ресурсов,  даже если  некоторые
       из них могут не включаться в проект.

            Чтобы был полезным данный параметр,  нужно включить параметр
       By Type (По типу).

                                Выбор ресурса
       -----------------------------------------------------------------

            Для выбора  ресурса переместите на него в окне проекта подс-
       ветку с помощью "мыши" или клавиш управления курсором (стрелок).

            - Если вы выбрали View¦By File,  ищите ресурс под его именем
              файла (если вы его знаете). Имени ресурса предшествует тип
              ресурса и двоеточие.

              Например, в окне проекта MYPROJ на Рис.  3.10 ресурс  пик-
              тограммы my_ico1   выведен   под   именем   файла  ресурса
              iconfike.ico как ICON:my_ico1.

            - Если вы выбрали View¦By Type,  просмотрите сначала  список
              типов  ресурсов.  Ресурсы перечислены по именам под типами
              ресурсов.

              Например, в окне проекта MYPROJ на Рис.  3.10 ресурс  пик-
              тограммы my_ico1 выведен под типом ресурса ICON.

                             Работа с ресурсами
       -----------------------------------------------------------------

            Если вы выводите ресурсы в окне проекта,  то видите, что они
       перечисляются по  именам.  В  следующем  разделе рассказывается о
       том, как выполнять загрузку ресурсов и работать с ними.

                           Редактирование ресурса
       -----------------------------------------------------------------

            Когда вы открываете ресурс, Пакет разработчика ресурсов отк-
       рывает также редактор ресурса. Вы может выбрать два типа редакто-
       ров:

            - редактор ресурсов, ориентированный на изображение:

            - текстовый  редактор,  который  позволяет вам редактировать
              только записи ресурсов.

            Для выбора редактора выберите ресурс и  используйте  команду
       Resource¦Edit  (Ресурс¦Редактирование)  или Resource¦Edit As Text
       (Ресурс¦Редактирование в виде текста). Команда Edit (Редактирова-
       ние) выбирает редактор,  соответствующий ресурсу,  а команда Edit
       As Text выбирает внутренний текстовый  редактор.  Так  как  Пакет
       разработчика ресурсов использует редакторы ресурсов по умолчанию,
       вы можете загрузить ресурс и  редактировать  его,  просто  дважды
       щелкнув кнопкой "мыши" на имени ресурса в окне проекта.

                       Использование редактора ресурса
       -----------------------------------------------------------------

            Если вы дважды щелкните кнопкой "мыши" на  имени  ресурса  в
       окне проекта, Пакет разработчика ресурсов загружает редактор, со-
       ответствующий выбранному ресурсу.

            - Если ресурс представляет собой диалог,  меню,  акселератор
              или  таблицу строк,  Пакет разработчика ресурсов загружает
              редактор,  специально предназначенный для работы с  данным
              типом ресурса. Описание этих редакторов можно найти в гла-
              вах 4 - 7.

            - Если  ресурс  представляет собой битовое изображение (пик-
              тограмму,  битовый массив, курсор или шрифт), Пакет разра-
              ботчика  ресурсов выводит этот ресурс в графическом редак-
              торе.   Все    характеристики    графического    редактора
              описываются  в  Главе 8.  Конкретные средства графического
              редактора, используемые при работе с каждым ресурсом, опи-
              саны в главе, посвященной данному ресурсу.
               Использование внутреннего текстового редактора
       -----------------------------------------------------------------

            Записи ресурсов  можно  редактировать  для  любого  ресурса,
       включая ресурсы,  которые обычно хранятся в двоичном формате. Па-
       кет разработчика  ресурсов  выводит текст в окне редактирования с
       помощью внутреннего редактора. Если необходимо, Пакет разработчи-
       ка ресурсов  декомпилирует  двоичный формат и позволяет вам рабо-
       тать с записями ресурсов.

            Чтобы отредактировать запись ресурса, сделайте следующее:

            1. Выберите ресурс в окне проекта.

            2. Выберите команду Resource¦Edit As Text (Ресурс¦Редактиро-
               вание в виде текста).  Пакет разработчика ресурсов откры-
               вает внутренний редактор и выводит записи ресурса.

            Внутренний текстовый редактор аналогичен редактору Notepad в
       Windows. Он находится всегда в режиме  вставки,  а  клавиши  Del,
       Home, End, PgUp, PgDn, Tab и Backspace работают стандартным обра-
       зом.

                  Примечание: Описание команд работы с записями ресурсов
             можно найти в оглавлении оперативного справочника Help.

            Когда вы вводите текст, не стоит тратить время на его форма-
       тирование, поскольку Пакет разработчика ресурсов  вероятно  пере-
       форматирует текст при его компиляции.

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

            Чтобы сохранить  изменения,  щелкните  кнопкой "мыши" на ко-
       мандной кнопке OK.  Если вы щелкните кнопкой на командной  кнопке
       No, то все внесенные изменения будут отброшены.

            Если Пакет  разработчика ресурсов находит какие-либо ошибки,
       он возвращает вас в текстовый редактор,  чтобы вы могли их испра-
       вить.

            Если вы  хотите редактировать записи ресурса непосредственно
       без помощи Пакета разработчика ресурсов, то можете открыть исход-
       ный файл  с  помощью  выбранного вами редактора и отредактировать
       этот файл.  Однако обратите внимание на  следующее:  когда  Пакет
       разработчика ресурсов загружает ресурс, он переформатирует записи
       ресурса и отбрасывает все комментарии в исходных записях ресурса.

                             Добавление ресурса
       -----------------------------------------------------------------

            Добавить ресурс  к  проекту вы можете в виде ссылки на файл,
       либо добавить его непосредственно к проекту.

                   Добавление ресурса, записанного в файле
       -----------------------------------------------------------------

            Вы можете добавить к текущему проекту ресурс,  записанный во
       внешнем файле, с помощью команды File¦Add To Project (Файл¦Добав-
       ление к  проекту).  Эту команду можно использовать для добавления
       существующего в данный момент файла ресурса или  создания  нового
       файла ресурса.
                          Выход из файлов ресурсов
       -----------------------------------------------------------------

            Если существующий  ресурс  находится в своем собственном от-
       дельном файле,  вы можете добавить его  к  проекту.  Предположим,
       например, что  у вас есть курсор,  записанный в файле .CUR,  и вы
       хотите использовать его в текущем проекте.

            Открыв файл описания проекта, сделайте следующее:

            1. Выберите команду File¦Add To Project.  Пакет разработчика
               ресурсов выводит диалоговое окно Add File To Project (До-
               бавление файла к проекту).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                     Add file to project                   ¦
       +---+-------------------------------------------T---------------+
       ¦   ------------------------------------------¬ ¦               ¦
       ¦   ¦           -----------------------------¬¦ ¦               ¦
       ¦   ¦ File Name ¦ *.rc                       ¦¦ ¦               ¦
       ¦   ¦           L-----------------------------¦ ¦               ¦
       ¦   ¦           ---------------------------T-¬¦ ¦               ¦
       ¦   ¦ File Type ¦ RC resource script       ¦v¦¦ ¦               ¦
       ¦   ¦           L--------------------------+--¦ ¦ ------------¬ ¦
       ¦   ¦ rcinclude will be                       ¦ ¦ ¦  _        ¦-¦
       ¦   ¦                  --------------------T-¬¦ ¦ ¦ V    OK   ¦-¦
       ¦   ¦ placed in        ¦ rwpdemo.rct       ¦v¦¦ ¦ L-------------¦
       ¦   ¦                  L-------------------+--¦ ¦   ------------¦
       ¦   L------------------------------------------ ¦               ¦
       ¦                                               ¦               ¦
       ¦    -Path---c:\wordshop----------------------- ¦               ¦
       ¦                                               ¦               ¦
       ¦   --------------------¬---------------------¬ ¦ ------------¬ ¦
       ¦   ¦Files              ¦¦ Directories        ¦ ¦ ¦           ¦-¦
       ¦   ¦---------------T-¬ ¦¦-----------------T-¬¦ ¦ ¦ X  Cancel ¦-¦
       ¦   ¦¦ ¦ editor.rc  ¦^¦ ¦¦¦                ¦^¦¦ ¦ L-------------¦
       ¦   ¦¦ ¦ menus.rc   +-+ ¦¦¦ П ...          +-+¦ ¦   ------------¦
       ¦   ¦¦ ¦ myrsourc.rc¦-¦ ¦¦¦ П temp         ¦-¦¦ ¦               ¦
       ¦   ¦¦ ¦ mypdemo.rc ¦-¦ ¦¦¦ П A            ¦-¦¦ ¦               ¦
       ¦   ¦¦ ¦ typical.rc ¦-¦ ¦¦¦ П B            ¦-¦¦ ¦               ¦
       ¦   ¦¦              ¦-¦ ¦¦¦ П C            ¦-¦¦ ¦               ¦
       ¦   ¦¦              ¦-¦ ¦¦¦ П F            ¦-¦¦ ¦ ------------¬ ¦
       ¦   ¦¦              ¦-¦ ¦¦¦ П G            ¦-¦¦ ¦ ¦           ¦-¦
       ¦   ¦¦              ¦-¦ ¦¦¦ П H            ¦-¦¦ ¦ ¦ ?  Help   ¦-¦
       ¦   ¦¦              ¦-¦ ¦¦¦ П I            ¦-¦¦ ¦ L-------------¦
       ¦   ¦¦              +-+ ¦¦¦ П Jrogram      +-+¦ ¦   ------------¦
       ¦   ¦¦              ¦v¦ ¦¦¦                ¦v¦¦ ¦               ¦
       ¦   ¦L--------------+-- ¦¦L----------------+--¦ ¦               ¦
       ¦   ¦                   ¦¦                    ¦ ¦               ¦
       ¦   L--------------------L--------------------- ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.12 Диалоговое окно Add File To Project

            Add File  To  Project  - добавить файл к проекту;  rcinclude
       will be placed in - файл rcinclude будет помещен в...;  File name
       - имя файла; Path - маршрут; Files - файлы; Directories - катало-
       ги.

            2. В текстовом блоке File Name введите имя файла, содержаще-
               го  ресурс,  или  дважды щелкните кнопкой "мыши" на имени
               файла, если оно выведено и блоке Files.

               Если файл не находится  в  текущем  каталоге,  вы  можете
               ввести имя  маршрута  файла,  или изменить каталоги с по-
               мощью блока списка Directories (Каталоги). Затем вы може-
               те выполнить поиск файла,  введя критерий поиска в диало-
               говом окне File Name (Имя файла) и  нажав  клавишу  Enter
               (например,  используя *.CUR для поиска всех файлов курсо-
               ра.  Когда вы найдете файл,  чтобы ввести его в текстовое
               окно File Name, дважды щелкните на нем кнопкой "мыши".

            3. Во  втором  всплывающем  списке  (под всплывающим списком
               File Type) вы можете видеть файл  текущего  проекта,  где
               вам  вероятно потребуется поместить ссылку на новый файл.
               Если ваш проект содержит более одного файла .RC, и вы хо-
               тите  поместить ссылку  где-либо еще,  прокрутите список,
               чтобы найти имя файла,  в  который  вы  хотите  поместить
               ссылку.

            4. Чтобы добавить файл к проекту,  нажмите клавишу Enter или
               щелкните кнопкой  "мыши"  на  командной кнопке OK.  Пакет
               разработчика ресурсов помещает запись ресурса,  указываю-
               щую на этот файл, в окне проекта.

               Если вы  выберите  команду  Vew¦By File (Просмотр¦По фай-
               лам),  то увидите имя файла и под ним - имя ресурса.  Все
               изменения, внесенные в проекте для данного ресурса, отра-
               жаются в исходном файле.

                            Новые файлы ресурсов
       -----------------------------------------------------------------

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

            Вы можете использовать этот  параметр  для  создания  нового
       файла идентификаторов.  Для этого нужно просто выбрать тип файла,
       который вам требуется (H,  PAS или INC) и ввести новое имя с пра-
       вильным расширением.  Пакет разработчика ресурсов создаст для вас
       новый файл. При использовании данного параметра вам не потребует-
       ся создавать файлы идентификаторов с помощью редактора вне Пакета
       разработчика ресурсов.
                           Сознание нового ресурса
       -----------------------------------------------------------------

            Для создания нового ресурса в проекте в виде записей ресурса
       используйте  команду Resource¦New (Ресурс¦Новый).  Убедитесь, что
       проект, с которым вы хотите работать,  открыт, и сделайте следую-
       щее:

            1. Выберите команду Resource¦New для вывода диалогового окна
               New Resource (Новый ресурс).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                     New Resource                          ¦
       +---+-------------------------------------------T---------------+
       ¦   Resource type                               ¦               ¦
       ¦   ------------------------------------------¬ ¦ ------------¬ ¦
       ¦   ¦ DIALOG                                  ¦ ¦ ¦  _        ¦-¦
       ¦   ¦ -------------------------------T-¬      ¦ ¦ ¦ V    OK   ¦-¦
       ¦   ¦ ¦ ACCELERATORS                 ¦^¦      ¦ ¦ L-------------¦
       ¦   ¦ ¦ BITMAP                       +-+      ¦ ¦   ------------¦
       ¦   ¦ ¦ CURSOR                       ¦-¦      ¦ ¦               ¦
       ¦   ¦ ¦------------------------------+-¦      ¦ ¦               ¦
       ¦   ¦ ¦¦DIALOG                       ¦-¦      ¦ ¦               ¦
       ¦   ¦ ¦L-----------------------------+-¦      ¦ ¦ ------------¬ ¦
       ¦   ¦ ¦ FONT                         +-+      ¦ ¦ ¦           ¦-¦
       ¦   ¦ ¦                              ¦v¦      ¦ ¦ ¦ X  Cancel ¦-¦
       ¦   ¦ L------------------------------+--      ¦ ¦ L-------------¦
       ¦   L------------------------------------------ ¦   ------------¦
       ¦                                               ¦               ¦
       ¦   Place resource in                           ¦               ¦
       ¦   ------------------------------------------¬ ¦               ¦
       ¦   ¦                                         ¦ ¦ ------------¬ ¦
       ¦   ¦  -----------------------------------T-¬ ¦ ¦ ¦..  New    ¦-¦
       ¦   ¦  ¦ TYPICAL.RC                       ¦v¦ ¦ ¦ ¦... Type   ¦-¦
       ¦   ¦  L----------------------------------+-- ¦ ¦ L-------------¦
       ¦   ¦                                         ¦ ¦   ------------¦
       ¦   L------------------------------------------ ¦               ¦
       ¦                                               ¦               ¦
       ¦                                               ¦               ¦
       ¦                                               ¦ ------------¬ ¦
       ¦                                               ¦ ¦           ¦-¦
       ¦                                               ¦ ¦ ?  Help   ¦-¦
       ¦                                               ¦ L-------------¦
       ¦                                               ¦   ------------¦
       ¦                                               ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.13 Диалоговое окно New Resource

            New Resource - новый ресурс;  Place resopurce in - поместить
       ресурс в...;  Resource type - тип ресурса; OK - выполнить; Cancel
       - отмена; New type - новый тип; Help - справка

            2. Дважды  щелкните кнопкой "мыши" на типе ресурса,  который
               вы хотите создать.

               - Если вы хотите создать акселератор, меню, диалог, стро-
                 ковую таблицу,  данные ресурса или ресурс, определенный
                 пользователем, Пакет разработчика ресурсов помещает со-
                 ответствующую ресурсу запись в окно проекта и открывает
                 соответствующий редактор ресурса  с  загруженным  новым
                 ресурсом.

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

                 Если вы  выберите  сохранение  ресурса  в виде двоичных
                 данных,  нужно задать файл,  в котором  будут  записаны
                 двоичные данные. Пакет разработчика ресурсов для облег-
                 чения задания имени файла выводит диалоговое  окно  Add
                 File To Project.

               - Если  тип ресурса,  который вы хотите создать,  в файле
                 отсутствует,  вы можете использовать  командную  кнопку
                 New Type (Новый тип) и создать для ресурса тип, опреде-
                 ленный пользователем.  О ресурсах, определенных пользо-
                 вателем, рассказывается в Главе 13.

               - Если  вы  создадите  в качестве ресурса пиктограмму или
                 битовое изображение, то увидите дополнительное диалого-
                 вое окно,  позволяющее вам задать характеристики ресур-
                 са.  Например,  если вы создаете новую пиктограмму,  то
                 увидите следующее диалоговое окно.


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   New icon image                          ¦
       +---+-----------------------------------------------------------+
       ¦     Size                         Colors                       ¦
       ¦     --------------------------¬  ---------------------------¬ ¦
       ¦     ¦                         ¦  ¦                          ¦ ¦
       ¦     ¦ >o  32X32¦              ¦  ¦   < 2 colors             ¦ ¦
       ¦     ¦     ------              ¦  ¦                          ¦ ¦
       ¦     ¦                         ¦  ¦   < 8 colors             ¦ ¦
       ¦     ¦                         ¦  ¦                          ¦ ¦
       ¦     ¦  <  32X16               ¦  ¦  >o 16 colors            ¦ ¦
       ¦     ¦                         ¦  ¦                          ¦ ¦
       ¦     ¦                         ¦  ¦  >  256 colors           ¦ ¦
       ¦     ¦                         ¦  ¦                          ¦ ¦
       ¦     L--------------------------  L--------------------------- ¦
       +---------------------------------------------------------------+
       ¦                                                               ¦
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.14 Диалоговое окно New Icon Image

            New Icon  Image  -  новый образ пиктограммы;  Size - размер;
       Colors - цвета
                           Переименование ресурса
       -----------------------------------------------------------------

            Переименовать ресурс можно следующим образом:

            1. Выберите команду Resource¦Rename (Ресурс¦Переименование).
               Пакет  разработчика  ресурсов  выводит  диалоговое   окно
               Rename Resource (Переименование ресурса).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   Rename resource                         ¦
       +---+-----------------------------------------------------------+
       ¦                                                               ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     ¦ Old name     ICON_1                                   ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     L-------------------------------------------------------- ¦
       ¦                                                               ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                 -------------------------------------¬¦ ¦
       ¦     ¦ New name        ¦                                    ¦¦ ¦
       ¦     ¦                 L-------------------------------------¦ ¦
       ¦     L-------------------------------------------------------- ¦
       +---------------------------------------------------------------+
       ¦                                                               ¦
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.15 Диалоговое окно Rename Resource

            Rename Resource - переименование ресурса;  Old name - старое
       имя; New name - новое имя;  OK - выполнить; Cancel - отмена; Help
       - справка.

            2. В текстовом поле ввода New Name (Новое имя) введите новое
               имя ресурса, затем нажмите клавишу Enter.

            3. Пакет разработчика ресурсов запрашивает у вас,  хотите ли
               вы создать новый идентификатор с данным именем.

               - Если вы не хотите, чтобы ваш ресурс был именованным ти-
                 пом, ответьте No (Нет).

                   Присваивание имени ресурса  идентификатора  позволяет
                   быстрее обращаться к ресурсу, но вы не сможете непос-
                   редственно в качестве параметра использовать короткое
                   целое значение идентификатора ресурса. Вы должны либо
                   привести целое значение к длинному указателю на char,
                   или   использовать  для  выполнения  приведения  типа
                   макрокоманду.

                   Если вы применяете макрокоманду и пишете программу на
                   Си,     то     можете    использовать    макрокоманду
                   MAKEINTRESOURCE.  Если вы пишете программу  на  Турбо
                   Паскале,  то  можете использовать тип MakeIntResource
                   (длинный указатель на char).

                   Макрокоманда MAKEINTRESOURCE  выглядит,   как   вызов
                   функции,  но  на самом деле выполняет приведение типа
                   идентификатора.  Например,  если у вас есть ресурс  с
                   именем TEXT1,  которому  вы  присвоили значение 1001,
                   Пакет разработчика ресурсов создает  идентификатор  с
                   данным  значением и именем TEXT1.  Чтобы использовать
                   TEXT1 в качестве параметра программы Cи, введите сле-
                   дующее выражение: MAKEINTRESOURCE(TEXT1).

            4. Если  вы ответите Yes (Да),  то есть хотите создать новый
               идентификатор с тем же именем,  что и имя ресурса,  Пакет
               разработчика   ресурсов   выводит   диалоговое  окно  New
               Identifier (Новый идентификатор).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   New identifier                          ¦
       +---+-----------------------------------------------------------+
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                 -------------------------------------¬¦ ¦
       ¦     ¦ Name            ¦ FileWindow                         ¦¦ ¦
       ¦     ¦                 L-------------------------------------¦ ¦
       ¦     L-------------------------------------------------------- ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                 -------------------------------------¬¦ ¦
       ¦     ¦ Value           ¦ 42                                 ¦¦ ¦
       ¦     ¦                 L-------------------------------------¦ ¦
       ¦     L-------------------------------------------------------- ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦                 -----------------------------------T-¬¦ ¦
       ¦     ¦ File            ¦ rwpdemo.rc                       ¦v¦¦ ¦
       ¦     ¦                 L----------------------------------+--¦ ¦
       ¦     L-------------------------------------------------------- ¦
       +---------------------------------------------------------------+
       ¦                                                               ¦
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.15 Диалоговое окно New Identifier

            New Identifier  - новый идентификатор;  Name - имя;  Value -
       значение;  File - файл;  OK - выполнить;  Cancel - отмена; Help -
       справка.

            5. Введите  соответствующее  значение  в предусмотренной для
               этого строке и убедитесь,  что вы выбрали файл, в котором
               хотите  сохранить  идентификатор.  Используйте  значение,
               превышающее 256.  Идентификаторы ресурсов от 1 до 256 за-
               резервированы  для  предопределенных типов и последующего
               расширения.



                   Задание параметров памяти для ресурсов
       -----------------------------------------------------------------

            Пакет разработчика  ресурсов позволяет легко определить, как
       с ресурсом каждого типа следует работать в памяти.  Однако,  пока
       вы не  приобретете  в  программировании в Windows некоторый опыт,
       возможно лучше будет сохранить для  параметров  памяти  значения,
       установленные по умолчанию, поскольку изменяя способ работы с ре-
       сурсом в памяти вы можете не предвидеть последствия.

            Для задания параметров памяти,  щелкните кнопкой "мыши", по-
       зиционируясь  на  ресурсе в окне Windows. Затем  выберите команду
       Resource¦Memory Options (Ресурс¦Параметры памяти). Выводится диа-
       логовое окно Memory Options.

       ----T-----------------------------------------------------------¬
       ¦ - ¦                Resource memory options                    ¦
       +---+-----------------------------------------------------------+
       ¦                                                               ¦
       ¦      Resource name                                            ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦ dlg_open                                              ¦ ¦
       ¦     L-------------------------------------------------------- ¦
       ¦                                                               ¦
       ¦      Memory options                                           ¦
       ¦     --------------------------------------------------------¬ ¦
       ¦     ¦   _                        _                          ¦ ¦
       ¦     ¦  V  Load on call¦         V  Discardable              ¦ ¦
       ¦     ¦     -------------                                     ¦ ¦
       ¦     ¦   _                        _                          ¦ ¦
       ¦     ¦  V  Moveable              V  Pure                     ¦ ¦
       ¦     ¦                                                       ¦ ¦
       ¦     L-------------------------------------------------------- ¦
       +---------------------------------------------------------------+
       ¦                                                               ¦
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.15 Диалоговое окно New Identifier

            Resource memory options - параметры памяти ресурса; Resource
       Name -  имя ресурса;  Memory options - параметры памяти;  Load on
       call - загрузка по вызову; Discardable - выгружаемый;  Moveable -
       перемещаемый;  Pure - "чистый";  OK - выполнить; Cancel - отмена;
       Help - справка.

            Если хотите, отмените все параметры загрузки или памяти. Для
       некоторых ресурсов  битового  изображения иногда желательно отме-
       нить параметр Discardable. Если данный параметр отменен, то прик-
       ладная программа может модифицировать ресурс,  когда он находится
       в памяти.

            Если вы установили параметр для ресурса  пиктограммы (Icon),
       то эти  параметры применяются ко всем изображениям данного ресур-
       са.

            Опишем каждый  параметр  диалогового  окна  Resource  Memory
       Options:


                            Resource Memory Options          Таблица 3.1
       --------------------T-------------------------------------------¬
       ¦   Параметр        ¦               Описание                    ¦
       +-------------------+-------------------------------------------+
       ¦   Load on Call    ¦ Загружает ресурс в  память  только  в  том¦
       ¦                   ¦ случае, когда это требуется.  Выбор  пара-¦
       ¦                   ¦ метра  Load  on Call может уменьшить объем¦
       ¦                   ¦ памяти,  необходимый  для  загрузки  вашей¦
       ¦                   ¦ программы.                                ¦
       ¦                   ¦                                           ¦
       ¦                   ¦ Если вы отмените данный параметр, то акти-¦
       ¦                   ¦ визируете  Preload.  Это   означает,   что¦
       ¦                   ¦ Windows  загружает  его  в память при пер-¦
       ¦                   ¦ воначальной загрузке программы.  Предвари-¦
       ¦                   ¦ тельная  загрузка  требуется  только в том¦
       ¦                   ¦ случае, если вы знаете, что Windows ресурс¦
       ¦                   ¦ требуется,  как  только программа начинает¦
       ¦                   ¦ работать.                                 ¦
       ¦                   ¦                                           ¦
       +-------------------+-------------------------------------------+
       ¦   Moveable        ¦ Позволяет  Windows  перемещать сегмент ре-¦
       ¦                   ¦ сурса в памяти, освобождая память для дру-¦
       ¦                   ¦ гих прикладных программ в памяти.         ¦
       ¦                   ¦                                           ¦
       ¦                   ¦ Если вы  отмените данный параметр, сегмент¦
       ¦                   ¦ ресурса занимает  в  памяти  фиксированный¦
       ¦                   ¦ блок.                                     ¦
       ¦                   ¦                                           ¦
       +-------------------+-------------------------------------------+
       ¦   Discardable     ¦ Позволяет Windows выгружать сегмент ресур-¦
       ¦                   ¦ са из  памяти,  когда  он больше не нужен.¦
       ¦                   ¦ При необходимости Windows может снова заг-¦
       ¦                   ¦ рузить ресурс в память.                   ¦
       ¦                   ¦                                           ¦
       ¦                   ¦ Если вы отмените данный параметр, то акти-¦
       ¦                   ¦ визируете параметр Nondiscardable. Windows¦
       ¦                   ¦ не сможет удалить сегмент курсора из памя-¦
       ¦                   ¦ ти,  пока работает прикладная программа, и¦
       ¦                   ¦ если не установлен параметр Pure,  вы смо-¦
       ¦                   ¦ жете модифицировать  ресурс  в  прикладной¦
       ¦                   ¦ программе.                                ¦
       ¦                   ¦                                           ¦
       +-------------------+-------------------------------------------+
       ¦   Pure            ¦ Предотвращает модификацию сегмента  ресур-¦
       ¦                   ¦ са, загруженного в память.                ¦
       ¦                   ¦                                           ¦
       ¦                   ¦ Обычно желательно устанавливать данный па-¦
       ¦                   ¦ раметр.  Об этом параметре подробнее расс-¦
       ¦                   ¦ казывается в документации по Windows.     ¦
       ¦                   ¦                                           ¦
       L-------------------+--------------------------------------------


                              Удаление ресурса
       -----------------------------------------------------------------

            Чтобы удалить ресурс из проекта, выберите ресурс в окне про-
       екта, затем выберите команду  Edit¦Cut (Редактирование¦Вырезание)
       или Edit¦Delete  (Редактирование¦Удаление),  чтобы  удалить  его.
       (Команда Edit¦Cut позволяет вам вставить ресурс в другом месте.)
                        Использование идентификаторов
       -----------------------------------------------------------------

            Windows требует, чтобы каждый ресурс имел уникальное имя или
       связанный с  ним  уникальный  идентификатор  (который  называется
       идентификатором ресурса). Для присваивания фактических целых зна-
       чений, как идентификаторов ресурсов, вы можете использовать Пакет
       разработчика ресурсов, но более вероятно, что вы захотите исполь-
       зовать идентификатор,  представляющий идентификатор ресурса. Тер-
       мин "идентификатор" относится к определениям #define языка Си или
       константам Паскаля,  используемым для присваивания имени ресурса,
       которое более осмысленно, чем целое значение.

                  Примечание: Описание  различных типов файлов идентифи-
                              каторов см. выше.

            Если вы работаете с файлом .RES, выполняемым файлом или DLL,
       Пакет разработчика ресурсов декомпилирует все идентификаторы  ре-
       сурсов в  данных  файлах  в целочисленные значения.  В этих типах
       файлов вы не можете использовать идентификаторы ресурсов,  но мо-
       жете сохранить  файл,  как  файл .RC,  и затем присвоить ресурсам
       идентификаторы.

                  Примечание: См. ниже раздел "Работа с двоичными файла-
                              ми".

            В прикладных программах, написанных на языке Си, для присва-
       ивания ресурсам имен обычно используются определения #define. Ес-
       ли вы используете #define,  то можете записать  их  в  одном  или
       более файлов заголовков.

            В прикладных программах, написанных на Паскале, для этой це-
       ли можно использовать константы.  Если вы используете  константы,
       их можно  записать  в одном или более модулях или включаемых фай-
       лах.

            Если при работе с Пакетом разработчика ресурсов  модуль  или
       включаемый файл Паскаля,  то можете присваивать константам в этом
       файле только целочисленные значения.

            Для простоты в данном руководстве файлы заголовков, модули и
       включаемые файлы называются файлами идентификаторов.


                       Добавление файла идентификатора
       -----------------------------------------------------------------

            Если у вас еще нет файла заголовка,  связанного  с  исходным
       кодом Си,,  или модуля либо включаемого файла, связанного с прог-
       раммой Паскаля,  с помощью Пакета разработчика ресурсов вы можете
       создать новый файл идентификаторов.

                  Примечание: Для  декомпилированного  объектного  файла
             (такого как выполняемый файл или DLL)  файл идентификаторов
             добавить нельзя.

            Чтобы добавить к проекту файл идентификаторов,  выберите ко-
       манду File¦Add To Project (Файл¦Добавление к проекту)  и  исполь-
       зуйте диалоговое  окно  Add  File  To Project (Добавление файла к
       проекту). О работе с данным диалоговым окном рассказывается выше.

                      Работа без файла идентификаторов
       -----------------------------------------------------------------

            Если вы  не добавляете к проекту файл идентификаторов, Пакет
       разработчика ресурсов может записывать все создаваемые для ресур-
       са идентификаторы  в  активном  файле проекта.  Он записывает эти
       идентификаторы как определения #define, а не как константы Паска-
       ля.

            Однако, если вы потом решите выбрать все определения #define
       в один или более файлов заголовков,  чтобы извлечь их из  записей
       ресурсов и вставить в файлы заголовков,нужно использовать тексто-
       вый редактор. Поскольку данный процесс может потребовать времени,
       привести к ошибкам,  и поддерживает только  определения  #define,
       лучше  сначала перед работой с ресурсами задать файлы идентифика-
       торов.  Затем, когда вы создадите ресурсы, можно поместить каждый
       идентификатор в соответствующий файл идентификаторов, так как Па-
       кет разработчика ресурсов запрашивает у вас при создании  иденти-
       фикатора, куда нужно его записать.


            Добавление идентификаторов с помощью редактора ресурсов
       -----------------------------------------------------------------

            Чаще всего  идентификатор  добавляется в файл путем создания
       нового идентификатора в редакторе ресурсов.

            Например, предположим,  что вы редактируете строковую табли-
       цу.  Каждая  строка в строковой таблице требует уникального иден-
       тификатора, который вводится в поле ID Source.  Если  вы  введете
       имя, на  распознаваемое  строковым редактором,  и нажмете клавишу
       Enter, Пакет разработчика ресурсов запрашивает у вас,  хотите  ли
       вы создать новый идентификатор, Если вы ответите Yes (Да), то вы-
       ведется диалоговый блок New Identifier (Новый идентификатор).


       ----T---------------------------------------------------T---T---¬
       ¦ - ¦                 Resource Workshop                 ¦ ^ ¦ v ¦
       +---+---------------------------------------------------+---+---+
       ¦ File  Edit  Resource  Stringtable   Window   Help             ¦
       +---T---------------------------------------------------T---T---+
       ¦ - ¦     STRINGTABLE: sth_FileNew                      ¦ ^ ¦ v ¦
       +---+---------------------------------------------------+---+-T-+
       ¦sth_FileOpen                                                 ¦^¦
       +-------------------------------------------------------------+-+
       ¦sth_FileOpen  ----T--------------------------------------¬   ¦-¦
       +--------------¦ - ¦       Rename identifier              ¦---+-¦
       ¦sth_FileSave  +---+--------------------------------------+   ¦-¦
       +--------------¦ ----------------------------------------¬¦---+-¦
       ¦sth_FileSaveAs¦ ¦     ---------------------------------¬¦¦   ¦-¦
       +--------------¦ ¦Name ¦-sth_EditSearch-----------------¦¦¦---+-¦
       ¦sth_FilePrint ¦ ¦     L---------------------------------¦¦   ¦-¦
       +--------------¦ L----------------------------------------¦---+-¦
       ¦sth_FileExit  ¦ ----------------------------------------¬¦   ¦-¦
       +--------------¦ ¦     ---------------------------------¬¦¦---+-¦
       ¦sth_File      ¦ ¦Value¦ 41                             ¦¦¦   ¦-¦
       +--------------¦ ¦     L---------------------------------¦¦---+-¦
       ¦sth_EdrUndo   ¦ L----------------------------------------¦   ¦-¦
       +--------------¦ ----------------------------------------¬¦---+-¦
       ¦sth_EdrCut    ¦ ¦     -------------------------------T-¬¦¦   ¦-¦
       +--------------¦ ¦File ¦ rwpdemo.rc                   ¦v¦¦¦---+-¦
       ¦sth_EdrCopy   ¦ ¦     L------------------------------+--¦¦   ¦-¦
       +--------------¦ L----------------------------------------¦---+-¦
       ¦sth_EdrPaste  +------------------------------------------+   ¦-¦
       +--------------¦ ----------¬   ----------¬   ----------¬  ¦---+-¦
       ¦sth_EdrClear  ¦ ¦  _      ¦-  ¦         ¦-  ¦         ¦- ¦   ¦-¦
       +--------------¦ ¦ V  OK   ¦-  ¦ X Cancel¦-  ¦ ? Help  ¦- ¦---+-¦
       ¦sth_EdrDelete ¦ ¦         ¦-  ¦         ¦-  ¦         ¦- ¦   ¦-¦
       +--------------¦ L-----------  L-----------  L----------- ¦---+-¦
       ¦sth_Edr       ¦   ----------   -----------    ---------- ¦   ¦-¦
       +--------------¦                                          ¦---+-+
       ¦sth_EdrSearch-L----------------------------------------------¦v¦
       +-------------------------------------------------------------+-+
       ¦>¦---------------------------------------------------------¦<¦ ¦
       +-+----------------------T----------------------------------+-+-+
       ¦ Modify string table    ¦                                      ¦
       L------------------------+---------------------------------------

            Рис. 3.18 Диалоговое окно New Identifier

            Resource Workshop -  Пакет  разработчика  ресурсов;  File  -
       файл;  Edit  - редактирование;  Resource - ресурс;  Stringtable -
       строковая таблица;  Window - окно Help -  справка;  Id  Source  -
       идентификатор исходного текста;  OK - выполнить; Cancel - отмена;
       Modify string table - модификация строковой таблицы.

            В блоке Value (Значение) вы можете либо ввести новое  значе-
       ние для идентификатора, либо принять выведенное значение, которые
       является уникальным для данной строковой таблицы.

            Во всплывающем списке  File (Файл) вы можете задать файл,  в
       котором нужно сохранить идентификатор. Так как вы уже создали для
       текущего  проекта  по крайней мере один идентификатор,  вы можете
       прокрутить список для этого файла,  выбрать его,  затем  щелкнуть
       кнопкой  "мыши",  позиционировавшись на командной кнопке OK,  или
       нажать клавишу Enter. Идентификатор будет помещен в этот файл.

            Вы можете также добавить идентификатор в файл непосредствен-
       но, не связывая предварительно идентификатор с ресурсом.  О  том,
       как работать с идентификаторами,  рассказывается в следующем раз-
       деле.
                         Добавление, редактирование,
                    удаление и вывод списка идентификаторов
       -----------------------------------------------------------------

            Чтобы добавить,  отредактировать, удалить или просто вывести
       список идентификаторов, сделайте следующее:

            1. Выберите команду Resource¦Identifiers (Ресурс¦Идентифика-
               торы). Пакет разработчика ресурсов выводит диалоговое ок-
               но IOdentifiers (Идентификаторы).


       ----T---------------------------------------------------------T-¬
       ¦ - ¦                     Compiler Error                      ¦v¦
       +---+-------------------------------------------T-------------+-+
       ¦  Name                   Value                 ¦               ¦
       ¦ ----------------------¬----------------------¬¦ ------------¬ ¦
       ¦ ¦FileWindowe          ¦¦ 101                 ¦¦ ¦--\        ¦-¦
       ¦ L----------------------L----------------------¦ ¦L-- New    ¦-¦
       ¦ -------------------------------------------T-¬¦ L-------------¦
       ¦ ¦BS_DEFINE                                 ¦^¦¦   ------------¦
       ¦ ¦BS_AUTOSTATE                              +-+¦               ¦
       ¦ ¦BS_aUTOCHECKBOX                           ¦-¦¦               ¦
       ¦ ¦BS_TOPAUTOBUTTON                          ¦-¦¦ ------------¬ ¦
       ¦ ¦                                          +-+¦ ¦-i\        ¦-¦
       ¦ ¦                                          ¦v¦¦ ¦L-- Change ¦-¦
       ¦ +-T--------------------------------------T-+-+¦ L-------------¦
       ¦ ¦>¦--------------------------------------¦<¦ ¦¦   ------------¦
       ¦ L-+--------------------------------------+-+--¦               ¦
       ¦  Usage                                        ¦               ¦
       ¦ -------------------------------------------T-¬¦ ------------¬ ¦
       ¦ ¦cursoredj---------------------------------¦^¦¦ ¦-i\        ¦-¦
       ¦ ¦                                          +-+¦ ¦L-- Delete ¦-¦
       ¦ ¦                                          ¦-¦¦ L-------------¦
       ¦ ¦                                          +-+¦   ------------¦
       ¦ ¦                                          ¦v¦¦               ¦
       ¦ +-T--------------------------------------T-+-+¦               ¦
       ¦ ¦>¦--------------------------------------¦<¦ ¦¦ ------------¬ ¦
       ¦ L-+--------------------------------------+-+--¦ ¦           ¦-¦
       ¦  View                                         ¦ ¦ ?  Help   ¦-¦
       ¦  ------------------------------------------¬  ¦ L-------------¦
       ¦  ¦             _  -----------------------¬ ¦  ¦   ------------¦
       ¦  ¦ >o All     V   ¦Show predefined       ¦ ¦  ¦               ¦
       ¦  ¦                L----------------------- ¦  ¦               ¦
       ¦  ¦                ---------------------T-¬ ¦  ¦               ¦
       ¦  ¦ < Single file  ¦rrwpdemo.rc         ¦v¦ ¦  ¦               ¦
       ¦  ¦                L--------------------+-- ¦  ¦               ¦
       ¦  L------------------------------------------  ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.19  Диалоговое окно Identifiers

            Identifiers - идентификаторы;  Name - имя; Value - значение;
       Usage - использование; View - просмотр; New - новый; Change - из-
       менение; Delete  -  удаление;  Help  - справка;  All - все;  Show
       predefined - вывод предопределенных; Single file - один файл.

               Это диалоговое окно является безрежимным. Чтобы выполнить
               другие  функции,  вам  не нужно из него выходить.  Вместо
               этого вы можете сохранить его,  как одно из окон редакти-
               рования. Если вы действительно хотите от него избавиться,
               то дважды щелкните кнопкой "мыши" на управляющем элементе
               меню в левом верхнем углу диалогового окна.

            2. Для управления тем, какой идентификатор Пакет разработчи-
               ка ресурсов будет выводить в данном диалоговом окне,  ис-
               пользуйте кнопки с зависимой фиксацией:

                 - Кнопки с зависимой фиксацией: All и Single File:

                     * Выберите кнопку All (Все), если вы хотите вывести
                       идентификаторы, которые добавлены к проекту.

                     * Выберите кнопку Single File (Один файл), если хо-
                       тите  вывести  на экран идентификаторы только для
                       одного из файлов в окне списка  справа  от  этого
                       выбора.  Если вы выберете Single File, а в списке
                       более одного файла,  то убедитесь, что вы подсве-
                       тили нужный файл.

                 - Если  вы  хотите  выводить  на экран предопределенные
                   значения #define, которые включаются Windows, выбери-
                   те Show Predefined (Вывод предопределенных).

            3. Идентификаторы  выводятся в верхнем окне списка. Значения
               Name (Имя) и Value (Значение)  выделенного идентификатора
               выводятся под этими заголовками,  а файлы,  в которых ис-
               пользуется идентификатор,  выводятся в блоке списка Usage
               (Использование).

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

                 - Активизация кнопки New (Новый) приводит к выводу диа-
                   логового  окна  New Identifier (Новый идентификатор).
                   Пример данного диалогового окна можно найти  на  Рис.
                   3.18.

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

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

                 - Если вы  хотите  изменить  или  удалить  существующий
                   идентификатор,  то  этот  идентификатор нужно сначала
                   выбрать из верхнего блока списка,  а  затем  щелкнуть
                   кнопкой "мыши" на командной кнопке Change (Изменение)
                   или Delete (Удаление).

                  Примечание: Предопределенные  идентификаторы выводятся
             серым цветом. Изменить или удалить их нельзя.
                   Сохранение ресурсов, файлов и проектов
       -----------------------------------------------------------------

            На практике полезно почаще сохранять результаты работы.  Па-
       кет разработчика ресурсов предоставляет вам разнообразные команды
       сохранения. Вы можете точно выбрать, что нужно сохранить.

                           Команда File¦Save¦Project

            Для полного сохранения  текущего  проекта  выберите  команду
       File¦Save¦Project (Файл¦Сохранение¦Проект).  Если  вы  сохраняете
       новый проект,  который еще не имеет имени, Пакет разработчика ре-
       сурсов выводит диалоговое окно,  позволяющее вам задать имя и ка-
       талог.

            Пакет разработчика  ресурсов всегда сохраняет файл проекта и
       файлы, на которые он ссылается. Если вы выберите в диалоговом ок-
       не  File¦Preferences  (Файл¦Параметры) файлы .RES и.EXE (это окно
       описывается далее), Пакет разработчика ресурсов также компилирует
       и сохраняет файл .RES,  или встраивает ресурсы в выполняемый файл
       либо DLL.

            Если ваш проект основан на файле .RC, Пакет разработчика ре-
       сурсов в процессе сохранения выполняет также  компиляцию проекта.
       Эта скомпилированная  версия  сохраняется  в  файле с расширением
       .RWS. При следующем открытии проекта Пакет  разработчика ресурсов
       может сэкономить  время,  загружая уже скомпилированный файл .RWS
       вместо загрузки и компиляции файла .RC.

            Пакет разработчика ресурсов выполнять любую компиляцию,  ко-
       торая может  потребоваться  для ваших ресурсов.  Пример возможной
       компиляции проекта можно найти на Рис. 2.11.

                           Команда File¦Save File As

            Если вы хотите переименовать текущий проект или файл  ресур-
       са, выберите  команду  File¦Save File As (Файл¦Сохранить файл под
       именем). Пакет разработчика ресурсов выводит диалоговое окно Save
       File As (Сохранения файла под именем...).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   Save file as                            ¦
       +---+-------------------------------------------T---------------+
       ¦  ------------------------------------------¬  ¦               ¦
       ¦  ¦                   ---------------------¬¦  ¦               ¦
       ¦  ¦ New file name     ¦ *.rc               ¦¦  ¦               ¦
       ¦  ¦                   L---------------------¦  ¦               ¦
       ¦  ¦           ---------------------------T-¬¦  ¦ ------------¬ ¦
       ¦  ¦ File type ¦ RC resource script       ¦v¦¦  ¦ ¦  _        ¦-¦
       ¦  ¦           L--------------------------+--¦  ¦ ¦ V    OK   ¦-¦
       ¦  L------------------------------------------  ¦ L-------------¦
       ¦                                               ¦   ------------¦
       ¦   -File--selected--rwpdemo.rc---------------  ¦               ¦
       ¦                                               ¦               ¦
       ¦   -Path---c:\products\rwrkshop--------------  ¦               ¦
       ¦                                               ¦               ¦
       ¦  --------------------¬---------------------¬  ¦               ¦
       ¦  ¦Files              ¦¦ Directories        ¦  ¦               ¦
       ¦  ¦---------------T-¬ ¦¦-----------------T-¬¦  ¦               ¦
       ¦  ¦¦ ¦ cua.rc     ¦^¦ ¦¦¦ П ...          ¦^¦¦  ¦ ------------¬ ¦
       ¦  ¦¦ ¦ editor.rc  +-+ ¦¦¦ П temp         +-+¦  ¦ ¦           ¦-¦
       ¦  ¦¦ ¦ kat.rc     ¦-¦ ¦¦¦ П A            ¦-¦¦  ¦ ¦ X  Cancel ¦-¦
       ¦  ¦¦ ¦ katdemo.rc ¦-¦ ¦¦¦ П B            ¦-¦¦  ¦ L-------------¦
       ¦  ¦¦ ¦ menus.rc   ¦-¦ ¦¦¦ П C            ¦-¦¦  ¦   ------------¦
       ¦  ¦¦ ¦ myproj.rc  ¦-¦ ¦¦¦ П F            ¦-¦¦  ¦               ¦
       ¦  ¦¦ ¦ myresour.rc¦-¦ ¦¦¦ П G            ¦-¦¦  ¦               ¦
       ¦  ¦¦ ¦ newproj.rc ¦-¦ ¦¦¦ П H            ¦-¦¦  ¦               ¦
       ¦  ¦¦ ¦ rwpdemo.rc +-+ ¦¦¦ П I            +-+¦  ¦               ¦
       ¦  ¦¦ ¦ typical.rc ¦v¦ ¦¦¦ П J            ¦v¦¦  ¦ ------------¬ ¦
       ¦  ¦L--------------+-- ¦¦L----------------+--¦  ¦ ¦           ¦-¦
       ¦  L--------------------L---------------------  ¦ ¦ ?  Help   ¦-¦
       ¦                                               ¦ L-------------¦
       ¦                                               ¦   ------------¦
       ¦                                               ¦               ¦
       L-----------------------------------------------+----------------

            Рис. 3.20 Диалоговое окно Save File As

            Save File  As  - сохранить файл под именем;  New file name -
       новое имя файла;  File type - тип файла;  File selected -  выбран
       файла; Path - маршрут;  Files - файлы; Directories - каталоги; OK
       - выполнить; Cancel - отмена; Help - справка.

            Введите имя нового файла  или  выберите  корректное  имя  из
       списка Files.  Если вы хотите поместить файл в другой каталог, то
       можете выбрать  маршрут  с помощью списка Directories (Каталоги),
       или включить маршрут, ко которому вы хотите разместить файл. Ког-
       да вы убедитесь,  что имя файла корректно,  нажмите клавишу Enter
       или выберите командную кнопку OK.


                       Команда Resource¦Save Resource As

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

            1. Выберите команду Resource¦Save Resource As (Ресурс¦Сохра-
               нить ресурс под именем).  Пакет разработчика ресурсов вы-
               ведет диалоговое окно Save Resource As.

               Данное диалоговое окно выводит практически ту же информа-
               цию,  что и диалоговое окно File Save As (см. Рис. 3.20).
               Основное отличие здесь в том, что на третьей строке вмес-
               то выбора файла,  который требуется сохранить,  выводится
               ресурс, который нужно сохранить.

            2. Введите имя нового файла или выберите корректное  имя  из
               списка Files (Файлы).  Если вы хотите  поместить  файл  в
               другой    каталог,    то   можете   использовать   список
               Directories,  либо включить маршрут,  когда вы  набираете
               имя файла.  Когда вы убедитесь,  что имя файла корректно,
               для сохранения файла нажмите клавишу Enter  или  щелкните
               кнопкой  "мыши",  позиционировавшись  на командной кнопке
               OK.

            3. Пакет разработчика ресурсов запрашивает у вас,  хотите ли
               вы  включить  в  файл  описания  проекта ссылку на данный
               внешний файл.

                 - Выбор Yes (Да) приводит к тому, что запись ресурса в
                   текущем файле проекта будет заменена ссылкой на новый
                   файл. Все последующие изменения в ресурсе будут  сох-
                   раняться во внешнем файле ресурса,  а не в файле про-
                   екта или в предыдущем файле ресурса.

                 - Выбор No (Нет) приведет к созданию файла  ресурса без
                   внесения  каких-либо изменений в файл описания проек-
                   та.


                            Настройка параметров
       -----------------------------------------------------------------

            Чтобы установить  параметры  конфигурации,  выберите команду
       File¦Preferences (Файл¦Параметры).  Пакет  разработчика  ресурсов
       выводит диалоговое окно Preferences (Параметры).

       ----T-----------------------------------------------------------¬
       ¦ - ¦                       Preferences                         ¦
       +---+-----------------------------------------------------------+
       ¦  ------------------------------------------------------¬      ¦
       ¦  ¦                   --------------¬                   ¦      ¦
       ¦  ¦ Undo levels       ¦ *.rc        ¦                   ¦      ¦
       ¦  ¦                   L--------------                   ¦      ¦
       ¦  ¦                   ----------------------¬           ¦      ¦
       ¦  ¦ Text editor       ¦ notepad.exe         ¦           ¦      ¦
       ¦  ¦                   L----------------------           ¦      ¦
       ¦  ¦                   ---------------------------------¬¦      ¦
       ¦  ¦ Include path      ¦                                ¦¦      ¦
       ¦  ¦                   L---------------------------------¦      ¦
       ¦  L------------------------------------------------------      ¦
       ¦                                                               ¦
       ¦    Multi-save                                                 ¦
       ¦  ------------------------------------------------------¬      ¦
       ¦  ¦  _                ---------------------------------¬¦      ¦
       ¦  ¦ V   .RES          ¦ rwpdemo.res                    ¦¦      ¦
       ¦  ¦                   L---------------------------------¦      ¦
       ¦  ¦                   ---------------------------------¬¦      ¦
       ¦  ¦ -- Executable     ¦                                ¦¦      ¦
       ¦  ¦  _                L---------------------------------¦      ¦
       ¦  ¦ V   Make backups when saving files                  ¦      ¦
       ¦  L------------------------------------------------------      ¦
       ¦                                                               ¦
       +---------------------------------------------------------------+
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.21 Диалоговое окно Preferences


            Preferences - параметры;  Undo levels - уровни отмены;  Text
       editor - текстовый редактор; Include path  -  маршрут  доступа  к
       включаемым файлам;   Multi-save   -   множественное   сохранение;
       Executable - выполняемый файл;  Make backups when saving files  -
       создание резервных копий при сохранении файлов.

            В данном диалоговом окне вы можете делать следующий выбор:

                             Параметр Undo Levels

            Пакет разработчика  ресурсов  имеет  многоуровневое средство
       Undo (Отмена операции) и Redo (Возобновление  операции),  которое
       позволяет вам  скорректировать действия в любом из редакторов ре-
       сурсов. В зависимости от объема памяти  в  вашем  компиляторе  вы
       можете отменять  или повторять до 99 действий.  По умолчанию уро-
       вень повторений равен 10.

            Например, если вы работаете с графическим редактором и  пик-
       тограммой и закрашиваете область цветом,  затем выделяете и пере-
       мещаете часть графического изображения,  и видите, что это выгля-
       дит неудовлетворительно, то можно отменить перемещение, затем от-
       менить закраску (нажав для каждой отмены операции  Alt+пробел или
       выбрав команду Edit¦Undo). Если вы хотите снова увидеть, как выг-
       лядит закраска,  ее можно повторить,  а затем, если хотите, снова
       повторить перемещение  (нажав Shift+Alt+пробел или выбрав команду
       Edit¦Redo для каждого повтора).  Таким образом, в процессе редак-
       тирования можно отменять и повторять операции на столько уровней,
       сколько задано в параметре Undo Levels (Уровни отмены).

                             Параметр Text Editor

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

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

                             Параметр Include Path

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

                              Параметр Multi-Save

            Параметры .RES и Executable (Выполняемый  файл)  определяют,
       как будет  сохраняться  ваш  проект  при выборе команды File¦Save
       Project (Файл¦Сохранение проекта). Поскольку эти параметры приме-
       няются только к конкретному проекту,   они разрешены только когда
       открыт файл проекта компилятора ресурсов (.RC или .DLG).  Незави-
       симо от  параметра  Multi-Save  (Множественное сохранение) проект
       всегда сохраняется также в своем исходном формате. (Например, ес-
       ли проектом является файл .RC, ресурсы в файле всегда сохраняются
       также в виде записей ресурсов).

                                 Параметр .RES

            Данный параметр приводит к компиляции ресурсов текущего про-
       екта и сохранению их в файле формата .RES (двоичный формат).

                               Формат Executable

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

                    Параметр Make Backup when saving files

            Если вы выберите данный параметр,  Пакет разработчика ресур-
       сов при каждом сохранении проекта  создает  дополнительный  набор
       файлов резервных  копий.  В  резервных копиях в каждом расширении
       имени файла в качестве первого  символа  используется  тильда  ~.
       Например, когда  вы  сохраняете файл MYPROJ.BMP,  резервная копия
       сохраняется в файле с именем MYPROJ.~BM.


                    Копирования ресурсов между проектами
       -----------------------------------------------------------------

            Существует два способа копирования ресурса из текущего файла
       проекта в другом проекте.

            - Одним из способов является  сохранение  ресурса  в  файле,
              закрытие текущего проекта,  открытие другого проекта и до-
              бавление ресурса в виде файла к новому проекту. Если в ре-
              сурсе  имеются какие-либо идентификаторы,  нужно аккуратно
              сохранить их при добавлении ресурса к новому проекту.

            - Более простым способом является наличие двух открытых  ко-
              пий Пакета  разработчика ресурсов (по копии на каждый про-
              ект)  и  использование  буфера   вырезанного   изображения
              Windows  для копирования ресурса из одного проекта и копи-
              рования его в другой.  Этот метод не только быстрее перво-
              го, но сохраняет также все идентификаторы.

            Для копирования  ресурса  с  помощью второго метода сделайте
       следующее:

            1. Откройте две копии Пакета разработчика  ресурсов  -  одну
               копию для проекта,  содержащего ресурс, который вы хотите
               скопировать (исходный проект),  а другую для  проекта,  в
               который вы хотите скопировать ресурс (целевой проект).

            2. Убедитесь,  что целевой проект содержит ссылку на иденти-
               фикатор файла, который будет содержать все идентификаторы
               нового   ресурса.   (Если  необходимо,  выберите  команду
               File¦Add To Project и добавьте соответствующий  тип файла
               идентификаторов.)

            3. Выберите файл проекта,  затем выберите ресурс, который вы
               хотите скопировать в окно проекта. Выберите команду Edit¦
               Copy для копирования его в буфер вырезанного изображения.

                   Примечание: Не  используйте  клавиши  Ctrl+Ins  - при
               этом ресурс не будет правильно скопирован.

            4. Выберите целевой проект,  затем при активном окне проекта
               выберите  команду Edit¦Paste (Редактирование¦Вставка) для
               вставки ресурса в проект. Пакет разработчика ресурсов вы-
               ведет диалоговое окно Paste Resource (Вставка ресурса).


       ----T-----------------------------------------------------------¬
       ¦ - ¦                   Paste resource                          ¦
       +---+-----------------------------------------------------------+
       ¦   Paste resource into                                         ¦
       ¦  ------------------------------------------------------¬      ¦
       ¦  ¦ -------------------------------------------------T-¬¦      ¦
       ¦  ¦ ¦-c:/workshop/newproj.rc-------------------------¦v¦¦      ¦
       ¦  ¦ L------------------------------------------------+--¦      ¦
       ¦  ¦                                                     ¦      ¦
       ¦  L------------------------------------------------------      ¦
       ¦                                                               ¦
       ¦   Paste identifiers into                                      ¦
       ¦  ------------------------------------------------------¬      ¦
       ¦  ¦ -------------------------------------------------T-¬¦      ¦
       ¦  ¦ ¦ c:/workshop/newproj.rc                         ¦v¦¦      ¦
       ¦  ¦ L------------------------------------------------+--¦      ¦
       ¦  L------------------------------------------------------      ¦
       ¦                                                               ¦
       +---------------------------------------------------------------+
       ¦  ---------------¬     ---------------¬     ---------------¬   ¦
       ¦  ¦  _           ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  ¦ V    OK      ¦-    ¦  X  Cancel   ¦-    ¦  ?  Help     ¦-  ¦
       ¦  ¦              ¦-    ¦              ¦-    ¦              ¦-  ¦
       ¦  L----------------    L----------------    L----------------  ¦
       ¦    ---------------      ---------------      ---------------  ¦
       ¦                                                               ¦
       L----------------------------------------------------------------

            Рис. 3.21 Диалоговое окно Paste resource

            Paste resource  -  вставка  ресурса;  Paste  resource into -
       вставка ресурса;  Paste identifiers into - вставка  идентификато-
       ров; OK - выполнить; Cancel - отмена; Help - справка.

            5. Текстовое  окно  Paste  Resource  Into  (Вставка ресурса)
               должно содержать имя целевого файла. Убедитесь, что текс-
               товое  поле Paste Identifiers Into (Вставка идентификато-
               ров) содержит имя файла идентификаторов,  в который будут
               записаны идентификаторы ресурса (если необходимо, прокру-
               тите список и выберите корректное имя), затем для вставки
               нового ресурса нажмите клавишу Enter или щелкните кнопкой
               "мыши" на командной кнопке OK.
                         Работа с двоичными файлами
       -----------------------------------------------------------------

            Пакет разработчика  ресурсов  позволяет  вам загружать в ка-
       честве проектов выполняемые файлы,  файлы .RES или файлы DLL. При
       загрузке файлов  одного из указанных типов Пакет разработчика ре-
       сурсов декомпилирует ресурсы в файле и выводит вам их,  как  если
       бы это  была часть файла .RC.  Когда вы закончите вносить измене-
       ния, Пакет разработчика ресурсов компилирует ресурсы снова в дво-
       ичный код и записывает их в исходный файл.

            Поскольку ресурсы, с которыми вы работаете в проектах данно-
       го типа никогда не сохраняются в виде  записей  ресурсов,  вы  не
       можете присвоить ресурсам идентификаторы. (Другими словами, иден-
       тификаторы ресурсов должны быть числами в двоичный файлах.) Одна-
       ко вы  можете сохранить проект как файл .RC.  После этого ресурсы
       можно сохранить в виде записей ресурса и присвоить им идентифика-
       торы.

            Есть еще  одна причина,  по которой желательно сохранять ре-
       сурсы в виде файла .RC. Если вы настраиваете пользовательский ин-
       терфейс программы и имеете доступ только к выполняемому файлу или
       DLL, желательно сохранять изменения в отдельном файле  .RC,  бла-
       годаря чему  вы  можете внести изменения в следующие версии прог-
       раммы. Конечно,  при этом нужно обеспечить,  чтобы идентификаторы
       ресурсов в  файле .RC имели те же идентификаторы ресурсов,  что и
       ресурсы в новой версии,  и что они совместимы с новой  версией  в
       других отношениях.

            Когда вы  сохраните  проект в файле .RC,  Пакет разработчика
       ресурсов не будет автоматически сохранять ресурсы снова в  исход-
       ном файле.  Чтобы сохранить ресурсы и в этом файле, нужно выбрать
       параметр множественного сохранения в окне  Preferences  (Парамет-
       ры).

            Весь процесс выполняется следующим образом:

            1. Выберите  команду  File¦Save File As (Файл¦Сохранить файл
               под именем) и используйте  диалоговое  окно File  Save As
               (Сохранение файла под именем) для ввода имени нового фай-
               ла .RC.  Когда вы для сохранения  файла  нажмете  клавишу
               Enter или выберите командную кнопку OK,  то увидите,  что
               имя проекта изменилось на имя нового файла.

            2. Выберите команду File¦Preferences (Файл¦Параметры) и вве-
               дите имя    исходного   двоичного   файла   в   параметре
               Multi-save.

                 - Если исходным двоичным файлом был файл .RES,  устано-
                   вите параметр .RES и введите имя в текстовом окне.

                 - Если  исходный  двоичный  файл был выполняемым файлом
                   или DLL,  установите параметр Executable (Выполняемый
                   файл) и введите имя в этом текстовом блоке.

            3. Выберите  команду  File¦Add To Project (Файл¦Добавление к
               проекту) и задайте файл  идентификаторов,  который  будет
               содержать  новые идентификаторы.  Если заданным вами файл
               не существует,  Пакет разработчика ресурсов создает новый
               файл.

            4. Внесите  изменения  в ресурсы и задайте,  там где хотите,
               идентификаторы.  Для каждого нового идентификатора  Пакет
               разработчика  ресурсов  запрашивает  у вас,  хотите ли вы
               сохранить его в файле идентификаторов.

               Примечание: Убедитесь, что вы сохраняете текущие целочис-
               ленные значения в идентификаторах ресурсов.

            5. Когда  вы выходите и сохраняете файл,  Пакет разработчика
               ресурсов сохраняет и файл .RC, и двоичный файл. Если дво-
               ичный файл - это выполняемый файл или DLL, измененные ре-
               сурсы встраиваются в него и становятся доступными  немед-
               ленно при запуске программы.



[ Назад ] [ Оглавление ] [ Далее ]

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог