CB中调用帮助文件内的索引文件的问题,有源码,帮忙看一下,谢谢

WYJBCB 2003-11-23 10:16:42
1、在DOS状态下,在c:\program files\Borland\CBuilder6\bin目录执行
implib hhctrl.lib hhctrl.ocx
2、
头文件:#include <htmlhelp.h>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HtmlHelp(
GetDesktopWindow(),AnsiString("E:\\Help.chm::/index").c_str(),
HH_DISPLAY_TOPIC,NULL) ;
}
其中index是Help.chm内的一个索引文件。
//------------------------------------------------------------------------
编译后出现如下错误:
[Linker Error] Unresolved external 'HtmlHelpA' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\UNIT1.OBJ

不知何解,请指教,谢谢
...全文
22 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wenyongjie 2003-11-30
  • 打赏
  • 举报
回复
转贴:
在C++Builder中使用Compress Html Help (.chm)

如何在C++Builder中使用Compress Html Help (.chm文件):
微软提供的HTML HELP Workshop中包含了htmlhelp.h和htmlhelp.lib,用于在程序中使用Compressed Html Help。但其中htmlhelp.lib不能直接在BCB中使用。在BCB中的使用方法如下:

implib hhctrl.lib hhctrl.ocx:创建HtmlHelp的库文件。
在程序中include <htmlhelp.h>
在工程中加入第一步创建的hhctrl.lib,
编译即可。

在程序中的实例:

HtmlHelp(
GetDesktopWindow(),
AnsiString(Application->HelpFile + "::/index.htm").c_str(),
HH_DISPLAY_TOPIC,
NULL);
 

实例

其中"::/html/IDH_CHECK.htm"参数为帮助文件编译时帮助主题所在的路径,我的帮助文件主题都在html中,这个目录与帮助工程在一起
 

在窗体上放一个TActionList,里面建一个Action比如叫HelpAction设它的ShortCut属性为F1,在它的OnExecute事件处理程序中写:
switch(dxSideBar1->SelectedItem->Tag)
{
.
.
.
case 61://计划
HtmlHelp(
GetDesktopWindow(),
AnsiString(Application->HelpFile+ "::/html/IDH_PLAN.htm").c_str(),
HH_DISPLAY_TOPIC,
NULL);
break;
case 62://申请
HtmlHelp(
GetDesktopWindow(),
AnsiString(Application->HelpFile+ "::/html/IDH_APPLAY.htm").c_str(),
HH_DISPLAY_TOPIC,
NULL);
break;
case 63://验收
HtmlHelp(
GetDesktopWindow(),
AnsiString(Application->HelpFile+ "::/html/IDH_CHECK.htm").c_str(),
HH_DISPLAY_TOPIC,
NULL);
break;
default :
HtmlHelp(
GetDesktopWindow(),
AnsiString(Application->HelpFile).c_str(),
HH_DISPLAY_TOPIC,
NULL);
break;
}

以上是根据用户在dxSideBar上选取的模块来调用帮助文件上相应的帮助主题
 

 
WYJBCB 2003-11-30
  • 打赏
  • 举报
回复
自已up
WYJBCB 2003-11-24
  • 打赏
  • 举报
回复
谢谢楼上的兄弟,现在编译能通过并且能运行了,但是按Button1后只能打开help.chm文件,不能直接显示出index的内容,请问是什么意思,谢谢!
ljianq 2003-11-24
  • 打赏
  • 举报
回复
将hhctrl.lib文件加入到项目中。

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧