在 delphi 中, 要调用 chm 文件可以通过引用 hhctrl.ocx 文件的函数 htmlhelpa 实现。
不过在这里, 我们也可以使用 api 函数 Shellexecute 来打开 chm 帮助文件。
在网上找到的资料, 通常以
Shellexecute (self.handle, 'เปิด', 'help.chm', '', '', sw_show);?
的方式来实现。
但有个不足, 就是不能打开指定的帮助页面, 所显示的是帮助文档的起始页面。
想到 chm 文件被关联到 hh.exe 程序, 那只要执行 hh.exe 程序, 并传入指定页面的地址, 则应该可以打开指定帮助页面。则应该可以打开指定帮助页面。
方法如下:
Shellexecute (self.handle
,'เปิด'
, 'hh.exe'
, 'mk: @msitstore:' + extractfilepath (application.exename) + 'wordimggener.chm ::/html/welcome.htm'
-
, sw_show);?
只要在ฟอร์ม的 onhelp 事件中, 对应当前 Activecontrol, 传入相应的地址就可以显示相关的帮助信息。
也可以在แบบฟอร์ม中加入一个แอ็คชั่น,, 设置快捷键为 f1, 在ดำเนินการ事件中调用上面的函数来打开 chm 帮助文档, 当不失是一个简便的方法。当不失是一个简便的方法。当不失是一个简便的方法。当不失是一个简便的方法。