О нем уже я упоминал в "Шаг 20 - Uniform Resource Location - URL" и "Шаг 157 - Что такое BLOB". Но там не описывался метод как подключить его к нашей программе на MFC. Основу справки составляет Hhctrl.ocx, который поставляется вместе с HTML Help Workshop. Вместе с ним поставляется заголовочный и два библиотечных файла.
..:\Program Files\HTML Help Workshop\Lib библиотеки hhctrl.lib htmlhelp.lib ..:\Program Files\HTML Help Workshop\Include заголовочный файл htmlhelp.h
Скопируйте файлы в соответствующие папочки VC. Для дальнейшего использования. Основу составляет функция HtmlHelp.
HWND HtmlHelp ( HWND hwndCaller, // Дескриптор вызывающего окна LPCSTR pszFile, // расположение CHM файла UINT uCommand, // команда DWORD dwData // данные для команды ) ;
Ну что, пробуем создать проект MFC на базе диалогового окна с именем TestHtml. На диалоговую панель помещаем кнопку, по которой и будем вызывать помошь. Привяжем к ней событие нажатия кнопки. Подключим Lib и H файлы:
// TestHtmlDlg.cpp : implementation file // #include "stdafx.h" #include "TestHtml.h" #include "TestHtmlDlg.h" #include "HtmlHelp.h" #pragma comment(lib,"hhctrl.lib") #pragma comment(lib,"htmlhelp.lib")
Ну и сама функция нажатия. Кстати, я взял CHM файл из поставки Windows.
void CTestHtmlDlg::OnButton1() { HWND help=NULL; help=HtmlHelp(NULL,"C:\\WINDOWS\\HELP\\Ieeula.chm",HH_DISPLAY_TOPIC,NULL); }
А вот так выглядит результат: