Як підключити * .chm?
У багатьох програмах зараз зустрічається формат HTML Help. А як таку довідку запустити в своєму додатку, та ще із зазначенням розділу довідки. Тобто стандартні ShellExecute і Winexec не допоможуть? Підкажіть приклад.
implementation
uses ShwllAPI;
procedure Button1Click (Sender: TObject);
begin
ShellExecute (application.handle, pChar ( "X: \ XX \ help.chm"), pChar (ExtractFilePath ( "X: \ XX \ help.chm")), "", 0);
end;
1. Установи компонент ActiveX Hhopen (Component => Import ActiveX Control.
2. Зайди у вкладку ActiveX (вона повинна створитися) і поклади на форму Hhopen.
Потім пиши такий код:
var
hf, ht. string;
pwhf, pwht: string;
begin
hf: = "Шлях до CHM-файлу";
ht: = "Розділ довідки";
GetMem (pwhf, Length (hf) * 2);
GetMem (pwht, Length (ht) * 2);
pwhf: = StringToWideChar (hf, pwhf, MAX_PATH * 2);
pwhf: = StringToWideChar (ht, pwhf, 32);
Будуть питання - звертайся, а то друкувати лом було :)
якщо ShellExecute із зазначенням розділу довідки, то так:
ShellExecute (application.handle, nil, pChar ( "hh.exe"), "myhelp.chm :: / topic3.html # label7", pChar (ExtractFilePath ( "X: \ XX \ myhelp.chm")), SW_RESTORE) ;
Приклад з ShellExecute мені сподобався, але відкрити на необхідному топіку не вдається:
ShellExecute (application.handle, nil, pChar ( "C: \ a \ kr.chm"), "kr.chm :: / archive.htm", pChar (ExtractFilePath ( "C: \ a \ kr.chm")) , SW_RESTORE)
по буквах читай. третій параметр hh.exe