Блог технического писателя Ильи Жукова

Вызов разделов CHM-справки

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

В материале Контекстная справка в приложениях Windows от 2023 года я уже касался этой темы как фоновой, рассматривая вариант реализации контекстной справки на основе CHM в программном комплексе Help+Manual. Но за последний месяц получил 4 письма с вопросами о том, как вызвать справку из программы, написанной на Delphi, как реализовать контекстную справку на базе HTML Help, а также как привязать CHM-справку к формам MS Access. Поэтому решил перевести данную информацию из фоновой в основную и выделить ее в отдельный материал.

 

Формат вызова раздела

Согласно документации разработчика HTML Help, синтаксис ссылки для вызова раздела CHM-файла следующий (исключая префикс ms-its и имя окна справки – их можно посмотреть по ссылке выше):

 

Helpfile.chm::/Topic.htm#anchor

 

Где:

  • Helpfile.chm - файл справки HTML Help;
  • Topic.htm - раздел в корне CHM-файла;
  • Topic - идентификатор раздела (Topic ID в H&M или Help ID в HelpNDoc);
  • anchor - якорь в разделе Topic.htm.

 

Основные сложности

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

  • структура CHM-файла;
  • идентификаторы разделов и имена HTML-файлов.

 

Структура

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

 

Helpfile.chm::/Topic.htm#anchor

 

HTML-файлы могут быть сгруппированы в папки и вложенные папки. В этом случае используйте следующий синтаксис:

 

Helpfile.chm::/html/overview/Topic.htm#anchor

 

Где файл раздела Topic.htm находится в папке overview, которая находится в папке html.

 

Если у вас нет связи с автором CHM-файла, структуру CHM-файла можно посмотреть самостоятельно при помощи бесплатной программы KeyTools от Ральфа Уолдена (скачать можно, например, здесь). Декомпилировать CHM-файл для этого не нужно.

 

программа KeyTools

 

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

 

Идентификаторы

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

 

свойства раздела

 

Как проверить ссылку

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

Выберите Пуск -> Выполнить и введите:

 

hh.exe C:\test\HelpFile.chm::/Topic.htm#anchor

 

Где:

  • hh.exe - программа для просмотра справки в формате HTML Help (CHM), файл расположен в C:\Windows\hh.exe;
  • C:\test\HelpFile.chm - путь к CHM-файлу;
  • Topic.htm - раздел в корне CHM-файла;
  • anchor - якорь в разделе Topic.htm.

 

Вызов CHM из программы

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

Programming Tutorials

CHM Files and Programming Languages

 

Добавить комментарий

Все о справке и документации для пользователей!

Следить за новыми статьями: