Введение. Создание файла CHM средствами HTML Help Workshop

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

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

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

Более простая, но не менее мощная программа для декомпиляции файлов с расширением *.chm – это CHM Decoder. Программа не требует установки, поэтому после скачивания можно сразу приступать к работе. Достаточно указать файл справки, каталог, в который будут сохранены все файлы и нажать на кнопочку “Go ”, после чего произойдет декомпиляция указанного файла. В тех случаях, когда нужно провести этот процесс максимально быстро, то данная программа является действительно эффективным решением.

Эта русская программа, которую разработал некий Сергей Тарасенко. Собственно, здесь все также просто: необходимо указать файлы *.html или *.htm, имя файла справки (выходной файл) и нажать соответствующую кнопку. Для разбора (декомпиляции) указываем файл справки и каталог, в котором будут сохранены полученные файлы. В принципе, программы сделана неплохо, но лично я привык уже к CHM Decoder и к HTML Help Workshop, поэтому о данной программе знаю, но не пользуюсь ей. Как говорится, на вкус и цвет…

Возможно меня кто-нибудь осудит за то, что эту программу я поместил в самый конец, но исхожу лишь из своих предпочтений. На самом деле программа OneClickHelp действительно очень мощный инструмент. Она позволяет производить компиляцию из файлов MS Word в *.chm и наоборот, обычную компиляцию директории в файл справки и, конечно, декомпиляцию. Программа на самом деле очень мощная, но она платная, поэтому могут возникнуть некоторые проблемы. Хотя я не всегда обращаю на это внимание.

Любой программист, написавший в жизни хотя бы пару программ, по окончании написания программы задумывался, как организовать справочную систему для своей программы. Написать справку в блокноте - это смешно. Составить справочное руководство при помощи мощного текстового процессора типа MS Word - тоже как-то не очень серьезно.

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

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

Файл справки в формате CHM. Этап №1. Создание проекта

Итак, при первоначальном запуске программа предложит нам три варианта:

New Project - Новый проект
Open Project - Открыть существующий проект
Import... - данная опция позволит импортировать уже скомпилированный файл справки

Выберем опцию New Project . Откроется окно создания шаблона проекта справки, в котором можно задать имя проекта (Project Title ) и язык проекта (Project Language ), а также будет отображена таблица первоначального наполнения, которую можно импортировать из уже существующего проекта.

Директ

Отредактировав необходимые параметры, жмем кнопку Создать проект (Create Project ), после чего будет создан проект по выбранному шаблону.

Файл справки в формате CHM. Этап №2. Задание опций проекта

Далее все делается интуитивно. Щелкнув по первой кнопке Project Options и выбрав вкладку General settings , мы попадем в окно задания опций проекта, в котором можно задать Имя проекта, автора, версию проекта, написать комментарий, добавить строку Copyright, задать топик, который открывается по умолчанию ("топик" - это раздел вашей справки) и т. д.

На вкладке Generation Settings можно задать пути для формирования файлов справок. Кстати, HelpNDoc позволяет создавать справку не только в формате CHM, но и PDF, HTML и Word.

На вкладках CHM Settings и PDF Settings , можно задать различные параметры файлов справок, формируемых в формате CHM и PDF соответственно. Например, для формата CHM можно задать отображаемые кнопки, размер шрифта и т. д.

Файл справки в формате CHM. Этап №3. Добавление топиков

Для добавления топиков (разделов справки) служит команда Add topic . Подтопики добавляются командой Add child topic .

Менять параметры топиков (иконку топика, Help Context и т.д.) можно через контекстное меню самого топика.

Файл справки в формате CHM. Этап №4. Форматирование текста

На вкладке Write можно задавать различные параметры форматирования текста как в MS Word.

Вкладка Insert позволяет добавлять различные объекты в файл справки, например картинки, видео, документы, HTML-код и т.д. При добавлении картинки и щелчке по ней сразу же появляется контекстная вкладка Format , которая позволяет изменить параметры отображения картинки.

Файл справки в формате CHM. Этап №5. Сохранение проекта

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

Файл справки в формате CHM. Этап №6. Генерация файла справки

После того, как проект будет полностью закончен, Вам останется только нажать кнопку Generate Help и сгенерировать файл справки.

Совсем забыл. Сгенерировать проект не получится, если у Вас не установлена программа Microsoft HTML Help WorkShop, которую можно скачать в интернете либо прямо с этого сайта по ссылке Скачать MS HTML Help WorkShop .
Ну и напоследок привожу пример файла справки, созданный некогда мной для программы на Delphi Скачать testchop.chm . Удачи.

Процесс создания chm значительно облегчает такой инструмент как HTML Help Workshop, разработанный Microsoft. Качаем HTML Help Workshop с сайта Microsoft. Устанавливаем HTML Help Workshop на свой компьютер. Создаем на локальном диске D: папку и называем ее chm. Запускаем HTML Help Workshop, выбираем в контекстном меню «File» -> «New» -> «Project». Откроется окно мастера проекта.

Необходимо указать, где будет храниться проект файла chm. Я указал созданную нами папку.

Рис. 2. Окно выбора расположения проекта

На следующем шаге ничего не меняем, так как у нас нет никаких файлов, которые можно было бы уже добавить в проект HTML Help Workshop.

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

Нажимаем «Готово». У нас получился пустой проект. Теперь нужно подготовить файлы, без которых невозможно создание chm. Главное – это сами страницы, содержащие справку. Для их создания необходимо выбрать в контекстном меню «File» -> «HTML File», в появившемся окне набрать название страницы, которую будем создавать. Я назвал ее «Intro».

Рис. 4. Создание первого файла HTML

После того как вы вбили свое название и нажали «OK», перед вами будет окно, в котором уже есть пустая html страница, если мы сохраним ее в таком виде, то это будет просто пустая html страница c заголовком «Intro». Наберите что-нибудь между тегами и сохраните страницу, нажав на изображение дискеты, в папке D:\CHM.

Рис. 5. Редактор HTML страниц

Также создайте еще пару страниц, чтоб можно было немного поэкспериментировать. Я создал страницы «FolderIntro.htm» и «Help In Folder.htm»

Рис. 6. Файлы в папке проекта

Теперь у нас есть 3 файла, которые необходимо скомпилировать в один файл chm. Но для того, чтобы созданный chm был полноценным важно наличие дерева каталогов и страниц справки, хранящихся внутри файла. Это дерево всегда располагается слева от текста справки. Для создания этого дерева нам нужно перейти на вкладку «Contents» в окне HTML Help Workshop. При нажатии на эту вкладку появится вопрос:

Рис. 7. Создание файла контента (в котором хранится древовидная структура справки)

Мы, конечно же, соглашаемся и создаем новый файл контента. Примем то имя файла, которое предложит нам HTML Help Workshop – «Table of Contents.hhc». С левой стороны обращаем внимание на вертикальный ряд кнопок, ими мы будем пользоваться при создании файла контента. Нажмем верхнюю из них – «Contents Properties».

Рис. 8. Окно в котором создается дерево контента

Появится такое вот окошко «Table of Contents Properties», можете в будущем поиграться с настройками стилей и видов, но сейчас мы не будем тут ничего менять, закроем окно. Рассмотрим кнопки немного ниже, чем кнока «Contents Properties», первая (с изображением папки) – создает каталог внутри файла chm, в который можно помещать страницы, вторая (с изображением исписанного листа бумаги) – создает страницу внутри файла chm, третья (карандаш) – редактирует страницу или каталог внутри файла chm, четвертая – удаляет страницу или каталог из списка страниц внутри файла chm. Еще ниже, расположены кнопки, которые позволяют перемещать страницы и каталоги вверх и вниз по списку, также передвигать правее и левее. Предпоследняя кнопка для просмотра HTML кода страницы и последняя, чтоб сохранить всю эту беду.

Итак, давайте приступим к созданию дерева каталогов. Нажмем на кнопку с изображением листика, перед нами появится окно, в котором заполняем поле «Entry title» (у меня набрано Intro). Нажимаем кнопку «Add…», появляется окно «Path or URL», набираем в поле «File or URL» название нашей первой созданной html страницы. Так как страница хранится в той же папке, что и сам проект – D:\CHM, то нет необходимости указывать полный путь к файлу.

Рис. 9. Добавление страницы в таблицу контента

Рис. 10. Добавление страницы в проект

Затем нажимаем «OK» в обоих окошках. Теперь нажимаем на кнопку с изображением папки. Появится окно, которое интересуется вставить ли каталог в начало таблицы контента. Мы согласимся, а потом, если надо, изменим.

Рис. 11. Указание расположения записи в дереве контента

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

Рис. 12. Что-то похожее на дерево контента

Сохраним таблицу контента.

Теперь создадим «Индекс» для файла chm. Для этого перейдем на вкладку «Index» и согласимся создать новый индексный файл «index.hhk». В появившемся окне нажимаем на кнопку с изображением ключа, набираем в поле «Keyword» ключевое слово, при поиске которого по индексу (когда файл справки будет уже создан) будет открываться определенная страница. После того, как указали ключевое слово, также как и при создании таблицы контента, нужно указать файл, который будет соответствовать этому ключевому слову.

Рис. 13. Окно создания индекса

После того как созданы таблица контента, индекс и сами html файлы можно приступить к непосредственно настройке файла chm. Для этого переходим на вкладку «Project», и тут нажимаем на самую верхнюю в вертикальном ряду кнопку. Настраиваем все как на скриншотах.

Рис. 14. Настройка проекта вкладка General

Рис. 15. Настройка проекта вкладка Files

На вкладке «Files» видно, что необходимо указать какие файлы мы используем как Contents file и Index file, а также Full text search stop list file. Первые два файла мы создали ранее, а последний создадим, нажав кнопку «Browse…» и указав имя «search». После этого нажимаем «OK».

Для создания поиска по файлу chm необходимо на вкладке «Compiler» поставить галку «Compile full-text search information».

Теперь жмем на кнопку с изображением папки (вторая сверху), в появившемся окне нажимаем кнопку «Add…», выделяем все html файлы, которые хотим добавить в справку и нажимаем «Открыть». Все файлы будут добавлены в файл справки. Теперь у нас должна быть такая картина.

Рис. 16. Добавления файлов HTML

Остается только скомпилировать файл chm. Нажимаем на самую нижнюю кнопку в вертикальном ряду кнопок.

Рис. 17. Компиляция

Появляется лог, того что проделано. Открываем папку D:\CHM, и видим там готовый файл «MyProject.chm». На этом создание chm завершено.

Файл в формате CHM предназначен для отображения справочной документации. Скомпилированный файл справки в формате HTML (.chm) разработан корпорацией Майкрософт.

Файл справки в формате CHM (Compiled Help Modules) по умолчанию открывается утилитой, встроенной в операционную систему. Для открытия файла в этом формате достаточно два раза кликнуть по файлу CHM мышью, или открыть файл в соответствующей программе, которая имеет справочную информацию в виде файла данного типа, из меню управления приложения.

Не открывается файл CHM

В некоторых случаях, файл справки с расширением CHM не открывается:

  • если файл CHM находится на сетевом диске, то для открытия файла нужно скопировать файл справки на компьютер
  • если в имени файла есть кириллица или специальные символы, то нужно переименовать файл, дав файлу имя буквами латинского алфавита

Не отображается содержимое файла CHM

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

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

Операционная система Windows блокирует отображение файла справки с целью защиты компьютера.

Что делать? На самом деле, я знаю, что следует сделать, так как ранее уже сталкивался с подобной проблемой. Я продумал, что некоторые пользователи также могут столкнуться с таким вариантом запуска документа. Человек надеется получить ответы на свои вопросы, а вместо этого, получает пустое содержание файла справки, отображается только оглавление.

Сначала необходимо найти скомпилированный файл справки в формате CHM на компьютере. В большинстве случаев, он расположен в папке установленной программы.

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



Просмотров