Программирование

Главная | Другие дисциплины
анотация модуля | вводная лекция | входной рейтинг контроль
анотация модуля №1 | лекции №1-3 | лабораторные №1-8 | промежуточное тестирование по модулю №1
анотация модуля №2 | лекции №4-7 | лабораторные №9-18 | промежуточное тестирование по модулю №2
анотация модуля №3 | лекции №8-12 | лабораторные №19-25 | промежуточное тестирование по модулю №3
анотация модуля №4 | лекции №13-15 | лабораторные №26-31 | промежуточное тестирование по модулю №4
анотация модуля №5 | лекции №16-17 | лабораторные №32-35 | промежуточное тестирование по модулю №5
анотация модуля №6 | лекции №18-20 | лабораторные №36-41 | промежуточное тестирование по модулю №6
анотация модуля №7 | лекции №21-23 | лабораторные №42-45 | промежуточное тестирование по модулю №7
анотация модуля | список экзаменационных вопросов | часто задаваемые вопросы | итоговое тестирование
small logoБазовый модуль №4

 

ЛЕКЦИЯ №15

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

Справочная система

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

Справочная система программ, работающих в Windows, в том числе и справочная система Delphi, представляет собой набор файлов определенной структуры, используя которые программа Winhelp, являющаяся составной частью Windows, выводит справочную информацию по запросу (требованию) пользователя.

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

Создать справочную систему (HLP-файл) можно, например, при помощи поставляемой вместе с Delphi программы Microsoft Help Workshop. Исходным "материалом" для создания HLP-файла является текст справочной информации, представленный в виде RTF-файла.

Процесс создания справочной системы (HLP-файла) можно представить как последовательность следующих двух шагов:

1. Подготовка справочной информации (создание файла документа справочной информации).

2. Преобразование файла справочной информации в файл справочной системы.

 

Файл документа справочной информации

Файл документа справочной системы представляет собой RTF-файл определенной структуры. Создать RTF-файл справочной информации можно, например, при помощи Microsoft Word. Сначала нужно набрать текст разделов справки, оформив заголовки разделов одним из стилей Заголовок, например Заголовок1. При этом текст каждого раздела должен находиться на отдельной странице документа (заканчиваться символом "разрыв страницы").

После того, как текст разделов будет набран, нужно, используя сноски (табл. 14.1), пометить заголовки разделов справочной информации (сноски используются компилятором справочной системы в процессе преобразования RTF-файла в HLP-файл, файл справки).

Таблица 14.1. Сноски, используемые для разметки RTF-файла

Сноска

Назначение

#


$


к

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

Задает имя раздела, которое будет использоваться для идентификации раздела справки в списке поиска и в списке просмотренных тем во время использования справочной системы

Задает список ключевых слов, при выборе которых из списка диалога поиска осуществляется переход к разделу справки, заголовок которой помечен этой сноской

Для того чтобы пометить заголовок раздела сноской, нужно установить курсор перед первой буквой заголовка раздела и из меню Вставка выбрать команду Сноска. В открывшемся диалоговом окне Сноски (рис. 14.1) в группе Вставить сноску нужно установить переключатель в положение обычную, а в группе Нумерация — в положение другая. В поле ввода номера сноски следует ввести символ "#" и нажать кнопку ОК.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14.1. Диалоговое окно Сноски

В результате в документ будет вставлена сноска #, и в нижней части окна документа появится окно ввода текста сноски, в котором рядом со значком сноски следует ввести идентификатор помечаемого раздела справки (рис. 14.2).

В качестве идентификатора можно использовать аббревиатуру заголовка раздела справки или сквозной номер раздела, поставив перед ним, например, буквы Ti (Topic Identifier). Однако лучше, чтобы идентификатор раздела справки начинался с префикса IDH_. В этом случае во время компиляции RTF-файла будет проверена корректность ссылок: компилятор выведет список идентификаторов, которые перечислены в разделе [MAP] файла проекта (см. ниже), но которых нет в RTF-файле.

 

 

 

 

 

 

 

 

 

 

Рис. 14.2. Вставка в документ сноски, помечающей заголовок раздела справки

Как правило, разделы справки содержат ссылки на другие разделы. В окне справочной системы понятия (слова), выбор которых вызывает переход к другому разделу справки, выделяются отличным от основного текста справки цветом и подчеркиваются.

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

На рис. 14.3 приведен вид окна редактора текста во время подготовки файла справочной информации для программы решения квадратного уравнения. Слово "дискриминант" помечено как ссылка на другой раздел справки (здесь предполагается, что раздел справки, в котором находятся сведения о дискриминанте, помечен сноской #, имеющей идентификатор IDH_2).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14.3. Оформление ссылки на другой раздел справки

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

 

Создание справочной системы

Создание проекта справочной системы

После того как создан файл справочной информации системы (RTF-файл), можно приступить к созданию справочной системы (HLP-файла). Для этого удобно воспользоваться программой Microsoft Help Workshop, которая поставляется вместе с Delphi и находится в файле Hcw.exe.

Запустить Microsoft Help Workshop можно из Windows или из Delphi, выбрав из меню Tools команду Help Workshop.

Если в меню Tools команды Help Workshop нет, то надо из этого же меню выбрать команду Configure Tools и в открывшемся диалоговом окне Tool Options (рис. 14.4) щелкнуть на кнопке Add. В результате этого откроется диалоговое окно Tool Properties (рис. 14.5), в поле Title которого надо ввести название программы — Help workshop, а в поле Program — полное (т. е. с указанием пути) имя исполняемого файла программы Microsoft Help

Workshop— C:\Program Files\Borland\Delphi7\Help\Tools\HCW.exe. Для ввода имени файла можно воспользоваться кнопкой Browse.

 

 

 

 

 

 

 

 

Рис. 14.4. Диалоговое окно Tool Options

 

 

 

 

 

 

 

 

Рис. 14.5. Диалоговое окно Tool Properties

После запуска программы Microsoft Help Workshop на экране появляется главное окно программы.

Для того чтобы приступить к созданию справочной системы, нужно из меню File выбрать команду New, затем в открывшемся диалоговом окне тип создаваемого файла — Help Project. В результате этих действий открывается окно Project File Name. В этом окне сначала надо выбрать папку, где находится программа, для которой создается справочная система, и где уже должен находиться файл документа справочной системы (RTF-файл). Затем в поле Имя файла нужно ввести имя файла проекта справочной системы. После щелчка на кнопке Сохранить открывается окно проекта справочной системы .

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

 

Включение в проект файла справочной информации (RTF-файла)

Для того чтобы добавить в проект файл справочной информации, нужно щелкнуть на кнопке Files и в открывшемся диалоговом окне Topic Files -кнопку Add. В результате откроется стандартное окно Открытие файла, используя которое следует выбрать нужный RTF-файл. В результате этих действий в окне проекта появится раздел [FILES], в котором будет указано имя файла справочной информации. Если справочная информация распределена по нескольким файлам, то операцию добавления файла нужно повторить.

 

Характеристики окна справочной системы

Чтобы задать характеристики главного окна справочной системы, надо в окне проекта нажать кнопку Windows и в поле Create a window named открывшегося окна Create a window, ввести слово main.

В результате щелчка на ОК появляется окно Window Properties, в поле Title bar text вкладки General которого нужно ввести заголовок главного окна создаваемой справочной системы.

Используя вкладку Position диалогового окна Window Properties, можно задать положение и размер окна справочной системы (рис. 14.13). На вкладке Position находится кнопка Auto-Sizer, при нажатии которой открывается окно Help Window Auto-Sizer (рис. 14.14), размер и положение которого определяется содержимым полей вкладки Position. При помощи мыши можно

менять размер и положение этого окна. После нажатия кнопки ОК координаты и размер окна Help Window Auto-Sizer будут записаны в поля вкладки Position.

Используя вкладку Color , можно задать цвет фона области заголовка раздела справки (Nonscrolling area color) и области текста справки (Topic area color). Для этого надо нажать соответствующую кнопку Change и в стандартном окне Цвет выбрать нужный цвет.

 

Назначение числовых значений идентификаторам разделов справки

Чтобы программа, использующая справочную систему, могла получить доступ к конкретному разделу справочной информации, нужно определить числовые значения для идентификаторов разделов. Чтобы это сделать, надо в окне проекта справочной системы нажать кнопку Map, в результате чего откроется диалоговое окно Map. В этом окне нужно нажать кнопку Add и в поле Topic ID, открывшегося диалогового окна Add Map Entry , ввести идентификатор раздела справки, а в поле Mapped numeric value — соответствующее идентификатору числовое значение. В поле Comment можно ввести комментарий — название раздела справочной системы, которому соответствует идентификатор.

 

Компиляция проекта

После того, как будет подготовлен файл проекта, можно выполнить компиляцию, щелкнув на находящейся в окне проекта кнопке Save and Compile. Однако первый раз компиляцию проекта справочной системы лучше выполнить выбором из меню File команды Compile, в результате выполнения которой открывается диалоговое окно Compile a Help File (рис. 14.19).

В этом окне следует установить флажок Automatically display Help file in WinHelp when done (Автоматически показывать созданную справочную систему по завершении компиляции), а затем нажать кнопку Compile. По завершении компиляции на экране появляется окно с информационным сообщением о результатах компиляции и, если компиляция выполнена успешно, окно созданной справочной системы. Созданный компилятором файл справочной системы (HLP-файл) будет помещен в ту папку, в которой находится файл проекта.

 

Доступ к справочной информации

Для того чтобы во время работы программы пользователь, нажав клавишу <F1>, мог получить справочную информацию, надо чтобы свойство HelpFile главного окна приложения содержало имя файла справочной системы, а свойство HelpContext числовой идентификатор нужного раздела (рис. 14.6). Вспомните, идентификаторы разделов справочной системы перечислены в разделе [MAP] файла проекта справочной системы.

 

 

 

 

 

 

 

 

 

Рис. 14.6. Свойство HelpFile должно содержать имя файла справки

Файл справочной системы приложения лучше поместить в ту папку, в которой находится файл исполняемой программы.
Для каждого компонента формы, например поля ввода, можно задать свой раздел справки. Раздел справки, который появляется, если фокус находится на компоненте, и пользователь нажимает клавишу <F1>, определяется значением свойства Heipcontext этого компонента. Если значение свойства HelpContext элемента управления равно нулю, то при нажатии клавиши <F1> появляется тот раздел справки, который задан для формы приложения.

Если в диалоговом окне есть кнопка Справка, то справочная информация выводится по-другому — для кнопки создается процедура обработки события onclick, которая обращением к функции winheip запускает программу Windows Help (файл Winhlp32.exe). При вызове функции winheip в качестве параметров указываются: идентификатор окна, которое запрашивает справочную информацию; имя файла справочной системы; константа, определяющая действие, которое должна выполнить программа Windows Help и уточняющий параметр.

Примечание

 

Идентификатор окна — это свойство Handle формы приложения. Свойство Handle доступно только во время работы программы, поэтому в списке свойств в окне Object Inspector его нет.

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

Ниже, в качестве примера, приведена процедура обработки события Onclick для кнопки Справка (Button4) диалогового окна программы решения квадратного уравнения.

// щелчок на кнопке Справка

procedure TForm1.Button4Click(Sender: TObject);
begin
winhelp(Form1.Handle,'sqroot.hip',HELP_CONTEXT,1); end;
HTML Help Workshop

Современные программы выводят справочную информацию в Internet-стиле — окно, которое используется для вывода справки, напоминает окно Internet Explorer. И это не удивительно, так как для вывода справочной информации используются компоненты, составляющие основу Microsoft Internet Explorer. Система отображения справочной информации является частью операционной системы, поэтому никакие дополнительные средства для вывода справочной информации не нужны.

Физически справочная информация находится в файлах с расширением chm. СНМ-файл — это так называемый компилированный HTML-документ. СНМ-файл получается путем компиляции (объединения) файлов, составляющих HTML-документ, который, как правило, состоит из нескольких HTML-файлов.

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

Наиболее просто создать справочную систему можно при помощи программы Microsoft HTML Help Workshop.

Чтобы создать справочную систему, нужно:

  • подготовить файлы справочной информации;
  • создать файл проекта;
  • создать файл контекста (содержания);
  • выполнить компиляцию.

Последние три из перечисленных выше шагов выполняются в программе HTML Help Workshop.

 

Подготовка справочной информации

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14.7. Для навигации по справочной информации можно использовать вкладку Содержание

 

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

Сначала нужно набрать текст разделов справки (каждый раздел в отдельном файле). Заголовки разделов и подразделов нужно оформить одним из стилей Заголовок. Заголовки разделов, как правило, оформляют стилем Заголовок1, подразделов — Заголовок2.

Следующее, что надо сделать, — вставить закладки в те точки документа, в которые предполагаются переходы из других частей документа. Чтобы вставить в документ закладку, нужно установить курсор в точку текста, в которой должна быть закладка, из меню Вставка выбрать команду Закладка и в поле Имя закладки диалогового окна Закладка (рис. 14.8) ввести имя закладки.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 14.8. Добавление закладки

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

Чтобы вставить в документ ссылку на закладку или заголовок, который находится в этом же документе, надо выделить фрагмент текста (слово или фразу), который должен быть гиперссылкой, из меню Вставка выбрать команду Гиперссылка, в появившемся окне Добавление гиперссылки (рис. 14.9) сначала щелкнуть на кнопке Связать с местом в этом документе, затем — выбрать закладку или заголовок, к которому должен быть выполнен переход.

 

 

 

 

 

 

 

 

Рис. 14.9. Выбор точки документа для перехода по ссылке

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

После того как в документ будут помещены все необходимые гиперссылки, документ нужно сохранить в HTML-формате.

 

Использование HTML Help Workshop

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

Чтобы создать HTML-файл, надо запустить HTML Help Workshop, из меню File выбрать команду New | HTML File и в появившемся окне HTML Title задать название раздела справки, текст которого будет находиться в создаваемом файле.

После щелчка на кнопке ОК становится доступным окно HTML-редактора, в котором находится шаблон HTML-документа. В этом окне, после строки <BODY>, можно набирать текст.

 

Основы HTML

HTML-документ представляет собой текст, в который помимо обычного текста включены специальные последовательности символов — теги. Тег начинается символом < и заканчивается символом >. Теги используются программами отображения HTML-документов для форматирования текста в окне просмотра (сами теги не отображаются).

Большинство тегов парные. Например, пара тегов <Н2> </н2> сообщает программе отображения HTML-документа, что текст, который находится между этими тегами, является заголовком второго уровня и должен быть отображен соответствующим стилем.

В табл. 14.2 представлен минимальный набор тегов, используя которые можно подготовить HTML-файл с целью дальнейшего его преобразования в СНМ-файл справочной системы.

Таблица 14.2. HTML-теги

Тег

Пояснение

<TITLE> Название </TITLE> Задает название HTML-документа. Программы отображения HTML-документов, как правило, выводят название документа в заголовке окна, в котором документ отображается. Если название не задано, то в заголовке окна будет выведено название файла

<BODY BACKGROUND = "Файл" BGCOLOR=" Цвет" ТЕХТ="Цвет">

Параметр BACKGROUND задает фоновый рисунок, BGCOLOR — цвет фона, TEXT — цвет символов НТМ L-документа

<BASEFONT ГАСЕ="Шрифг" SIZE=n>

Задает основной шрифт, который используется для отображения текста: FACE — название шрифта, SIZE — размер в относительных единицах. По умолчанию значение параметра SIZE равно 3. Размер шрифта заголовков (см. тег <н>) берется от размера, заданного параметром SIZE

<Н1> </Н1>

Определяет текст, находящийся между тегами <Н1> и </Н1> как заголовок уровня 1. Пара тегов <Н2></Н2> определяет заголовок второго уровня, а пара <нзх/нЗ> — третьего

<BR>

Конец строки. Текст, находящийся после этого тега, будет выведен с начала новой строки

<в> </в>

Текст, находящийся внутри этой пары тегов, будет выделен полужирным

<i> </i>

Текст, находящийся внутри этой пары тегов, будет выделен курсивом

<А NAME=" За кладка "> </А>

Помечает фрагмент документа закладкой. Имя закладки задает параметр NAME. Это имя используется для перехода к закладке

<А HREF="Файл.htm#Закладка"> </А>

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

<IMG SRC=" Иллюстрация" >

Выводит иллюстрацию, имя файла которой указано в параметре SRC

<!-

- -- >

Комментарий. Текст, находящийся между дефисами, на экран не выводится

Набирается HTML-текст обычным образом. Теги можно набирать как прописными, так и строчными буквами. Однако, чтобы лучше была видна структура документа, рекомендуется записывать все теги строчными (большими) буквами. Следующее, на что надо обратить внимание — программы отображения HTML-документов игнорируют "лишние" пробелы и другие "невидимые" символы (табуляция, новая строка). Это значит, что для того, чтобы фрагмент документа начинался с новой строки, в конце предыдущей строки надо поставить тег <вк>, а чтобы между строками текста появилась пустая строка, в HTML-текст нужно вставить два тега <вк> подряд.

Работая с HTML-редактором в программе HTML Help Workshop, в процессе набора HTML-текста можно увидеть, как будет выглядеть набираемый текст. Для этого надо из меню View выбрать команду In Browser или щелкнуть на командной кнопке, на которой изображен стандартный значок Internet Explorer.

<HTML>
<ТITLE>Kвадратное уравнение</ТIТLЕ>
<BODY BGCOLOR=#FFFFFF>
<BASEFONT FACE="Tahoma"SIZE=2>
<A NАМЕ="Квадратное_уравнение">

<Н2>Квадратное уравне-ние</Н2>

</А>Квадратное уравнение задается в общем виде следующим образом: <BR>
AX2+BX+C=0<BR>
где : А, В и С — коэффициенты при неизвестном X .<BR>

Квадратное уравнение имеет

<А HREF="sqroot_02.htm#Корни_уравнения">корни

</А>( решение ), если <А HREF="sqroot_О3.htm#Дискриминант">дискриминант </А>уравнения больше или равен нулю. Если дискриминант уравнения меньше нуля, то уравнение не имеет решения. <BR>

<BR>
<I>CM.</I><BR>
<A HREF="sqroot_О3.htm#Дискриминант">Дискриминант</А><ВК>
<A HREF="sqroot_О3.htm#Kopни_ypaвнeния">KopHH уравнения</А><ВК>
<BR>
</BODY>
</HTML>

 

Создание файла справки

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

После запуска HTML Help Workshop надо из меню File выбрать команду New/Project и в окне New Project — Destination ввести имя файла проекта справочной системы. После щелчка на кнопке Далее в этом и следующем окне, окно HTML Help Workshop

Первое, что надо сделать, — сформировать раздел [FILES], который должен включать имена HTML-файлов, содержащих справочную информацию по разделам. Чтобы добавить в раздел [FILES] имя файла, надо щелкнуть на кнопке Add/Remove topic files, затем, в появившемся диалоговом окне Topic Files — на кнопке Add и в появившемся стандартном диалоговом окне Открыть выбрать HTML-файл раздела справки. Если справочная информация распределена по нескольким файлам, то операцию добавления нужно повторить несколько раз. После того как в диалоговом окне Topic Files будут перечислены все необходимые для создания справочной информации HTML-файлы, нужно щелкнуть на кнопке ОК. В результате этих действий в файле проекта появится раздел [FILES], в котором будут перечислены HTML-файлы, используемые для создания справочной системы .

Следующее, что надо сделать, — задать главный (стартовый) раздел и заголовок окна, в котором будет выводиться справочная информация. Текст заголовка и имя файла главного раздела вводятся соответственно в поля Title и Default file вкладки General диалогового окна Options, которое появляется в результате щелчка на кнопке Change project options.

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

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

Чтобы во вкладку Contents добавить элемент, соответствующий разделу справочной системы, нужно щелкнуть на кнопке Insert a heading, в поле Entry title появившегося диалогового окна Table of Contents Entry ввести название раздела и щелкнуть на кнопке Add. На экране появится окно Path or URL. В поле HTML titles этого окна будут перечислены названия разделов (заголовки HTML-файлов) справочной информации, которая находится во включенных в проект файлах (имена этих файлов указаны в разделе [FILES] вкладки Project). Если вместо названия раздела справочной информации будет указано имя файла, то это значит, что в этом файле нет тега <TITLE>. Выбрав (по заголовку или по имени) нужный файл нужно щелкнуть на кнопке ОК. В результате перечисленных выше действий во вкладке Contents появится строка с названием раздела справочной информации.

Если нужно изменить значок, соответствующий добавленному разделу, то следует щелкнуть на кнопке Edit selection и, используя список Image index вкладки Advanced окна Table of Contents, выбрать нужный значок (обычно рядом с названием раздела или подраздела изображена книжка).

Подраздел добавляется точно так же, как и раздел, но после того как подраздел будет добавлен, нужно щелкнуть на кнопке Move selection right. В результате чего уровень заголовка понизится, т. е. раздел станет подразделом.

Элементы содержания, соответствующие темам справочной информации, добавляются аналогичным образом, но процесс начинается щелчком на кнопке Insert a page.

Иногда возникает необходимость изменить порядок следования элементов списка содержания или уровень иерархии элемента списка. Сделать это можно при помощи командных кнопок, на которых изображены стрелки. Кнопки Move selection up и Move selection down перемещают выделенный элемент списка, соответственно, вверх и вниз. Кнопка Move selection right перемещает выделенный элемент вправо, т. е. делает его подчиненным предыдущему элементу списка. Кнопка Move selection left выводит элемент из подчиненности предыдущему элементу.

 

Компиляция

Компиляция — это процесс преобразования исходной справочной информации в файл справочной системы (СНМ-файл).

Исходной информацией для HTML Help компилятора являются:

  • файл проекта (ННР-файл);
  • файл контекста (ННС);
  • файлы справочной информации (НТМ-файлы);
  • файлы иллюстраций (GIF- и JPG-файлы).

Результатом компиляции является файл справочной системы (СНМ-файл).

Чтобы выполнить компиляцию, надо из меню File выбрать команду Compile, в появившемся диалоговом окне Create a compiled file установить переключатель Automatically display compiled help file when done

(после компиляции показать созданный файл справки) и щелкнуть на кнопке Compile. В результате этого будет создан файл справки, и на экране появится окно справочной системы, в котором будет выведена информация главного раздела.

Вывод справочной информации

Чтобы вывести справочную информацию, которая находится в СНМ-файле, нужно воспользоваться ActiveX-компонентом (элементом управления) ньореп, который входит в состав Windows и представляет собой специальную динамическую библиотеку (файл Hhopen.ocx).

Первое, что следует сделать, — установить компонент Hhopen на одну из вкладок палитры компонентов. Для этого надо из меню Component выбрать команду Import ActiveX Control. На экране появится окно Import ActiveX, в котором будут перечислены все зарегистрированные в реестре Windows компоненты. В окне Import ActiveX, в списке зарегистрированных компонентов, нужно выбрать строку hhopen OLE Control module и щелкнуть на кнопке Install. В результате этого на экране появится диалоговое окно Install, в котором программист может выбрать пакет (packege — пакет, библиотека компонентов), в который будет добавлен устанавливаемый компонент. Компоненты, добавляемые программистом, "по умолчанию" добавляются в пакет dciusr. В результате щелчка на кнопке ОК выбранный компонент добавляется в пакет, и на экране появляется окно Package и запрос подтверждения процесса перекомпиляции пакета . По завершении процесса компиляции на экране появится окно, информирующее о том, что компонент добавлен в пакет и зарегистрирован . Значок компонента ньореп будет добавлен на вкладку ActiveX. В процессе компиляции будет создан файл представления компонента -- модуль HHOPENLib_TLIB.pas, который содержит описание методов, свойств и событий компонента.

Модуль представления можно увидеть, загрузив его в редактор кода из каталога \Delphi 7\Lib. Пролистав в окне редактора кода модуль HHOPENLib_TLIB.pas, который представляет собой интерфейс для доступа к элементу управления, можно найти описание класса тньореп (листинг 14.1).

Листинг 14.1. Описание класса THhореn

THhopen = class(Telecontrol)

private
FIntf: _DHhopen;

function GetControlInterface: _DHhopen;

protected
procedure CreateControl;
procedure InitControlData;

override;

public
function OpenHelp(const HelpFile: WideString;
const HelpSection: WideString): Integer;
procedure CloseHelp;
property ControlInterface:_DHhopen

read GetControlInterface;
property DefaultInterface:_DHhopen

read GetControlInterface;

published
property isHelpOpened: WordBool index 1

read GetWordBoolProp

write SetWordBoolProp

stored False;

end;

Класс тньореп предоставляет два метода: OpenHelp и CloseHelp.

Метод OpenHeip обеспечивает вывод справочной информации, метод close-Help — закрывает окно справочной системы.

У метода openHeip два параметра — имя файла справочной информации и имя раздела, содержимое которого будет выведено. В качестве имени раздела надо использовать имя HTML-файла, который применялся программой HTML Help Workshop в процессе создания СНМ-файла. Следует обратить внимание на то, что оба параметра должны быть строками widechar.

Следующая программа, ее диалоговое окно приведено на рис. 14.10, а текст — в листинге 14.2, демонстрирует использование ActiveX-компонента Hhopen для вывода справочной информации. Компонент нпореп добавляется в форму обычным образом. Так как во время работы программы он не отображается, то его можно поместить в любое место формы.

 

 

 

 

 

 

 

 

Рис. 14.10. Окно программы Использование ActiveX

Листинг 14.2. Использование компонента Hhopen unit ushh_;
interface
uses
Windows, Messages, SysUtils,

Classes, Graphics, Controls,

Forms, Dialogs, OleCtrls, HHOPENLibJTLB, StdCtrls;
type
TForm1 = class(TForm) Label1: TLabel;
Editl: TEdit; // файл справки
Edit2: TEdit; //раздел справки (имя HTML-файла)
Button1: TButton; // кнопка Справка
Hhopen1: THhopen; // ActiveX-компонент Hhopen
Label2: TLabel;
Label3: TLabel;
procedure ButtonlClick(Sender: TObject);

private
{ Private declarations }

public
{ Public declarations }

end;
var
Form1: TForm1;
implementation
{$R *.DFM}
// щелчок на кнопке Справка
procedure TForm1.ButtonlClick(Sender: TObject);
var
HelpFile : string; // файл справки
HelpTopic : string; // раздел справки
pwHelpFile : PWideChar;

// файл справки (указатель на строку WideChar)
pwHelpTopic : PWideChar;

// раздел (указатель на строку WideChar)

begin
HelpFile := Edit1.Text;
HelpTopic := Edit2.Text;
// выделить память для строк WideChar

GetMemfpwHelpFile, Length(HelpFile) * 2) ;

GetMemfpwHelpTopic, Length(HelpTopic)*2);
// преобразовать Ansi-строку в WideString-строку
pwHelpFile := StringToWideChar

(HelpFile,pwHelpFile,MAX_PATH*2)

pwHelpTopic := StringToWideChar(HelpTopic,pwHelpTopic,32);

// вывести справочную информацию

Form1.Hhopen1.OpenHelp(pwHelpFile,pwHelpTopic);
end;
end.

Вывод справочной информации выполняет процедура обработки события Onciic на кнопке Справка. Так как параметры метода OpenHelp должны быть строками widechar, то сначала выполняется преобразование ANSI-строки В строку WideChar.

 

Создание установочного диска

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

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

 

Программа InstallShield Express

Одним из популярных инструментов создания инсталляционных программ является пакет InstallShield Express. Borland настоятельно рекомендует использовать именно эту программу, поэтому она есть на установочном диске Borland Delphi 7 Studio.

Процесс установки программы InstallShield Express обычный. Для того чтобы его активизировать, нужно запустить программу установки Delphi (вставить установочный CD-ROM в дисковод) и в открывшемся диалоговом окне Delphi Setup Launcher выбрать команду InstallShield Express — Borland Limited Edition. В результате этого будет запущен мастер установки. По завершении процесса установки в меню Пуск | Программы | InstallShield появляется команда Express, выбор которой запускает InstallShield Express.

Процесс создания инсталляционного диска (CD-ROM) при помощи InstallShield Express рассмотрим на примере.

Пусть нужно создать инсталляционный диск для программы Сапер 2002. Перед тем как непосредственно приступить к созданию установочной программы в InstallShield Express, нужно выполнить подготовительную работу — составить список файлов, которые должны быть установлены на компьютер пользователя; используя редактор текста, подготовить RTF-файлы лицензионного соглашения (EULA — End User Licensia Agreement) и краткой справки (Readme-файл). Список файлов программы Сапер 2002, которые должны быть перенесены на компьютер пользователя, приведен в табл. 18.1.

Таблица 18.1. Файлы программы Сапер 2002, которые нужно установить на компьютер пользователя

Файл

Назначение

Куда устанавливать

Saper.exe

Saper.chm

Readme.rtf

Eula.rtf

Программа

Файл справочной информации

Краткая справка о программе

Лицензионное соглашение

Program Files\Saper 2002

Program Files\Saper 2002

Program Files\Saper 2002

Program Files\Saper 2002

 

Новый проект

После того как будет составлен список файлов, нужно запустить InstallShield Express, из меню File выбрать команду New и в поле Project Name and Location ввести имя файла проекта (рис. 18.1).

 

 

 

 

 

Рис. 18.1. Начало работы над новым проектом

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.2. В левой части окна проекта перечислены этапы и команды процесса создания инсталляционной программы

Команды настройки объединены в группы, название и последовательность которых отражает суть процесса создания инсталляционной программы. Заголовки групп пронумерованы. Настройка программы установки выполняется путем последовательного выбора команд. В результате выбора команды в правой части главного окна появляется список параметров. Команды, которые были выполнены, помечаются галочками.

 

Структура

Команды группы Organize Your Setup (рис. 18.3) позволяют задать структуру программы установки.

 

 

 

 

 

 

 

Рис. 18.3. Команды группы Organize Your Setup

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

Таблица 18.2. Параметры команды General Information

Параметр

Определяет

Значение

Product Name

Название устанавливаемой программы

Saper 2002

Product Version

Версия устанавливаемой программы

1.01.0001

INSTALLDIR

Каталог компьютера пользователя, в который будет установлена программа

[ProgramFiiesFolder] Saper 2002

Следует обратить внимание на параметр INSTALLDIR. По умолчанию предполагается, что программа будет установлена в каталог, предназначенный для программ. Поскольку во время создания инсталляционной программы нельзя знать, как на компьютере пользователя называется каталог программ и на каком диске он находится, то вместо имени реального каталога используется его псевдоним — [ProgramFiiesFolder]. В процессе установки программы на компьютер пользователя инсталляционная программа получит из реестра Windows имя каталога программ и заменит псевдоним на это имя.

Другие псевдонимы, которые используются в программе InstallShield Express, приведены в табл. 18.3

Таблица 18.3. Некоторые псевдонимы каталогов Windows

Псевдоним

Каталог

[WindowsVolume]

[Windows Folder]

[SystemFolder]

[ProgramFilesFolder]

[PersonalFolder]

Корневой каталог диска, на котором находится Windows

Каталог Windows, например C:\Winnt

Системный каталог Windows, например C:\Winnt\System32

Каталог программ, например C:\Program Files

Папка Мои документы на рабочем столе (расположение папки зависит от версии ОС и способа входа в систему)

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

В простейшем случае группа Features состоит из одного элемента Always Install. Чтобы добавить элемент в группу Features, нужно щелкнуть правой кнопкой мыши на слове Features, из появившегося контекстного меню выбрать команду New Feature Ins и ввести имя новой группы, например Help Files and Samples. После этого в поле Description следует ввести краткую характеристику элемента, а в поле Comments — комментарий (рис. 18.4).

 

 

 

 

 

 

 

Рис. 18.4. Несколько элементов в группе Features обеспечивают возможность многовариантной установки

Команда Setup Types позволяет задать, будет ли пользователю во время установки программы предоставлена возможность выбрать (в диалоговом окне Setup Type) вариант установки. Установка может быть обычной (Typical), минимальной (Minimal) или выборочной (Custom). Если устанавливаемая программа сложная, состоит из нескольких независимых компонентов, то эта возможность обычно предоставляется.

Для программы Сапер 2002 предполагается только один вариант установки — Typical. Поэтому флажки Minimal и Custom нужно сбросить (рис. 18.5).

 

 

 

 

 

 

 

 

 

Рис. 18.5. Команда Setup Types позволяет задать возможные варианты установки программы

 

Выбор устанавливаемых компонентов

Команды группы Specify Application Data (рис. 18.6) позволяют определить компоненты программы, которые должны быть установлены на компьютер пользователя. Если в проекте определены несколько групп компонентов (см. команду Features), то нужно определить компоненты для каждой группы.

 

 

 

 

 

 

 

 

 

Рис. 18.6. Команды группы Specify Application Data

В результате выбора команды Files правая часть окна будет разделена на области (рис. 18.7). В области Source computer's files можно выбрать файлы, которые необходимо перенести на компьютер пользователя. В области Destination computer's folders надо выбрать папку, в которую эти файлы должны быть помещены. Для того чтобы указать, какие файлы нужно установить на компьютер пользователя, следует просто "перетащить" требуемые файлы из области Source computer's files в область Destination computer's files. Если в группе Features несколько элементов, то надо определить файлы для каждого элемента.

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.7. Выбор файлов, которые нужно перенести на компьютер пользователя

Команда Object/Merge Modules позволяет задать, какие объекты, например динамические библиотеки или пакеты компонентов, должны быть помещены на компьютер пользователя и, следовательно, на установочную дискету. Объекты, которые нужно поместить на установочную дискету, выбираются в списке InstallShield Objects/Merge Modules (рис. 18.8).

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.8. Выбор объектов, которые должны быть установлены на компьютер пользователя

 

Конфигурирование системы пользователя

Команды группы Configure the Target System (рис. 18.9) позволяют задать, какие изменения нужно внести в систему пользователя, чтобы настроить систему на работу с устанавливаемой программой.

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.9. Команды группы Configure the Target System

Команда Shortcuts/Folders позволяет указать, куда нужно поместить ярлык,обеспечивающий запуск устанавливаемой программы. В результате выбора этой команды в правой части окна открывается иерархический список, в котором перечислены меню и папки, куда можно поместить ярлык программы. В этом списке необходимо выбрать меню, в которое должен быть помещен ярлык, щелкнуть правой кнопкой мыши и в появившемся списке выбрать команду New Shortcut (рис. 18.10).

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Затем, в диалоговом окне Browse for Shortcut Target, нужно выбрать файл программы (рис. 18.11), щелкнуть на кнопке Open и ввести имя ярлыка. После этого можно выполнить окончательную настройку ярлыка, например, в поле Arguments ввести параметры командной строки, а в поле Working Directory — рабочий каталог (рис. 18.12).

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.11. Выбор файла, для которого создается ярлык

 

 

 

 

 

 

 

 

Рис. 18.12. Ярлык создан, теперь можно выполнить его настройку

 

Настройка диалогов

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

Чтобы задать диалоговые окна, которые будут появляться на экране монитора во время работы инсталляционной программы, надо в группе Customize the Setup Appearance (рис. 18.13) выбрать команду Dialogs и в открывшемся списке Dialogs (рис. 18.14) отметить диалоги, которые нужно включить в программу установки.

 

 

 

 

 

 

 

 

Рис. 18.13. Команды группы Customize the Setup Appearance

 

 

 

 

 

 

 

 

 

 

 

 

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

В таблице Properties (справа от списка диалогов) перечислены свойства выбранного диалога. Программист может изменить значение этих свойств и, тем самым, выполнить настройку диалога. Например, для диалога Readme нужно задать имя файла (свойство Readme File), в котором находится краткая справка об устанавливаемой программе.

Для большинства диалогов можно определить баннер (свойство Banner Bitmap) — иллюстрацию, которая отображается в верхней части окна диалога. Формат файла баннера — BMP, размер — 499x58 пикселов.

В табл. 18.4 перечислены диалоговые окна, которые могут появиться во время работы инсталляционной программы.

Таблица 18.4. Диалоговые окна процесса установки

Диалоговое окно

Назначение

Splash Bitmap

Вывод иллюстрации, которая может служить в качестве информации об устанавливаемой программе. Размер иллюстрации — 465x281 пиксел, формат — BMP

Install Welcome

Вывод информационного сообщения на фоне иллюстрации (размер 499x312 пикселов)

License Agreement

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

Readme

Вывод краткой информации об устанавливаемой программе

Customer Information

Запрашивает информацию о пользователе (имя, название организации) и, возможно, серийный номер устанавливаемой копии

Destination Folder

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

Database Folder

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

Setup Type

Предоставляет пользователю возможность выбрать тип установки программы (Typical — обычная установка, Minimal — минимальная установка, Custom — выборочная установка)

Custom Setup

Предоставляет пользователю возможность выбрать устанавливаемые компоненты при выборочной (Custom) установке

Setup Complete Success Информирует пользователя о завершении процесса установки. Позволяет задать программу, которая должна быть запущена после завершения установки (как правило, это сама установленная программа), а также возможность вывода содержимого Readme-срайла.

Setup Progress

 

Показывает процент выполненной работы во время установки программы

Ready to Install

Вывод информации, введенной пользователем на предыдущих шагах, с целью ее проверки перед началом непосредственной установки программы

Для того чтобы диалоговое окно появлялось во время работы -инсталляционной программы, необходимо установить флажок, расположенный слева от названия диалогового окна. Для окон License Agreement и Readme нужно задать имена RTF-файлов, в которых находится соответствующая информация.

В простейшем случае программа инсталляции может ограничиться выводом следующих диалогов:

  • Readme;
  • Destination Folder;
  • Ready to Install;
  • Setup Progress;
  • Setup Complete Success.

 

Системные требования

Если устанавливаемая программа предъявляет определенные требования к ресурсам системы, то, используя команды группы Define Setup Requirements and Actions (рис. 18.15), эти требования можно задать.

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.15. Команды группы Define Setup Requirements and Actions

В результате выбора команды Requirements на экране появляется таблица (рис. 18.16), в которую надо ввести значения параметров, характеризующих систему: версию операционной системы (OS Version), тип процессора (Processor), объем оперативной памяти (RAM), разрешение экрана (Screen Resolution) и цветовую палитру (Color Depth). Значения характеристик задаются путем выбора из раскрывающегося списка, значок которого появляется в результате щелчка в поле значения параметра.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.16. Параметры, характеризующие систему

Если программа не предъявляет особых требований к конфигурации системы, то команды группы Define Setup Requirements and Actions можно пропустить.

 

Создание образа установочного диска

Команды группы Prepare for Release (рис. 18.17) позволяют создать образ установочного диска (CD-ROM) и проверить, как работает программа установки.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.17. Команды группы Prepare for Release

Для того чтобы активизировать процесс создания образа установочного диска (CD-ROM), нужно выбрать команду Build Your Release, щелкнуть правой кнопкой мыши на значке носителя, на который предполагается поместить программу установки, и из появившегося контекстного меню выбрать команду Build (рис. 18.18).

В результате этих действий на диске компьютера в папке проекта будет создан образ установочного диска. Если в качестве носителя выбран CD-ROM, то образ будет помещен в подкаталог \Express\Cd_rom\DiskImages\Disk1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 18.18. Активизация создантя образа установочного CD-ROM

 

 

 

 

 

 

 

Рис. 18.19. Test Your Release

 

О нас | Карта сайта | Наши контакты | ©2007 Красноярский Государственный Педагогический Университет им. В.П.Астафьева
Перепечатка с указанием ссылки.