如何调用Html Help中的某一页?用ShellExecute只能启动之。
void TMainForm::ShowHelp(AnsiString PageName)
{
//首先取得HtmlHelpA的函数地址
HMODULE hLoadLib;
HWND (*proc)(HWND hwndCaller, LPCSTR pszFile, UINT uCommand, DWORD dwData);
hLoadLib=LoadLibrary("Hhctrl.ocx");
if (hLoadLib==NULL)
{
Application->MessageBox("系统不支持HTMLHELP帮助。", "错误", MB_OK);
return;
}
proc=(HWND (*)(HWND hwndCaller, LPCSTR pszFile, UINT uCommand, DWORD dwData))GetProcAddress((HINSTANCE)hLoadLib,"HtmlHelpA");
if (proc==NULL)
{
Application->MessageBox("系统不支持HTMLHELP帮助。", "错误", MB_OK);
return;
}
//调出帮助页面
AnsiString HelpFileName = Application->HelpFile; //这是预先设好的
if (!PageName.IsEmpty())
HelpFileName += "::\\" + PageName; //指定到达的页面
(*proc)(GetDesktopWindow(), //调用帮助文件
HelpFileName.c_str(),
HH_DISPLAY_TOPIC,
NULL);
}
注:Application->HelpFile预先设定了Help文件的路径名