在delphi中,要调用chm文件可以通过引用hhctrl.ocx文件的函数htmlhelpa实现。
不过在这里,我们也可以使用api函数shellexecute来打开chm帮助文件。
在网上找到的资料,通常以
Shellexecute(self.handle,'open','help.chm','','',sw_show);?
的方式来实现。
但有个不足,就是不能打开指定的帮助页面,所显示的是帮助文档的起始页面。,所显示的是帮助文档的起始页面。
想到chm文件被关联到hh.exe程序,那只要执行hh.exe程序,并传入指定页面的地址,则应该可以打开指定帮助页面。
方法如下:
Shellexecute(self.handle
,'打开'
,'hh.exe'
,'Mk:@msitstore:' + ExtractFilePath(application.exename) +'dordimggener.chm ::/html/welly.htm'
,'''
,sw_show);?
只要在形式的的,对应当前,对应当前activeControl,传入相应的地址就可以显示相关的帮助信息。
也可以在形式中加入一个actionlist,添加一个动作,设置快捷键为f1,在执行事件中调用上面的函数来打开chm帮助文档,当不失是一个简便的方法。,当不失是一个简便的方法。