在Delphi中调用CHM帮助文件

在Delphi中,要调用Chm文件可以通过引用HHctrl.ocx文件的函数HtmlHelpA实现。

不过在这里,我们也可以使用API函数ShellExecute来打开Chm帮助文件。

在网上找到的资料,通常以

ShellExecute(self.Handle,'open','help.chm','', '',SW_SHOW);?

的方式来实现。

但有个不足,就是不能打开指定的帮助页面,所显示的是帮助文档的起始页面。

想到Chm文件被关联到hh.exe程序,那只要执行hh.exe程序,并传入指定页面的地址,则应该可以打开指定帮助页面。

方法如下:

ShellExecute(self.Handle
,'open'
,'hh.exe'
,'mk:@MSITStore:' + ExtractFilePath(Application.ExeName) + 'wordimggener.chm::/html/welcome.htm'
, ''
,SW_SHOW);?

只要在Form的onHelp事件中,对应当前ActiveControl,传入相应的地址就可以显示相关的帮助信息。
也可以在Form中加入一个ActionList,添加一个动作,设置快捷键为F1,在Execute事件中调用上面的函数来打开Chm帮助文档,当不失是一个简便的方法。

第一章 Delphi快速入门(一)  第一章 Delphi快速入门(二)  第一章 Delphi快速入门(三)  第一章 Delphi快速入门(四)  第一章 Delphi快速入门(五)  第二章 Delphi面向对象的编程方法(一)  第二章 Delphi面向对象的编程方法(二)  第二章 Delphi面向对象的编程方法(三)  第二章 Delphi面向对象的编程方法(四)  第三章 字符串列表及应用(一)  第三章 字符串列表及应用(二)  第四章 文本编辑器的设计(一)  第四章 文本编辑器的设计(二)  第五章 Delphi图形图像编程(一)  第五章 Delphi图形图像编程(二)  第六章 文件管理(一)  第六章 文件管理(二)  第六章 文件管理(三)  第七章 剪贴板和动态数据交换(一)  第七章 剪贴板和动态数据交换(二)  第八章 对象链接与嵌入(一)  第八章 对象链接与嵌入(二)  第九章 Delphi拖放编程  第十章 动态链接库编程(一)  第十章 动态链接库编程(二)  第十一章 Delphi应用程序的应用(一)  第十一章 Delphi应用程序的应用(二)  第十二章 异常处理与程序调试(一)  第十二章 异常处理与程序调试(二)  第十二章 异常处理与程序调试(三)  第十三章 Delphi开发数据库应用程序概述(一)  第十三章 Delphi开发数据库应用程序概述(二)  第十四章 简单数据库应用的创建及MASTAPP介绍(一)  第十四章 简单数据库应用的创建及MASTAPP介绍(二)  第十四章 简单数据库应用的创建及MASTAPP介绍(三)  第十五章 数据访问部件的应用及编程(一)  第十五章 数据访问部件的应用及编程(二)  第十五章 数据访问部件的应用及编程(三)  第十六章 数据浏览部件的应用及编程(一)  第十六章 数据浏览部件的应用及编程(二)  第十七章 SQL编程(一)  第十七章 SQL编程(二)  第十八章 Delphi客户服务器应用开发(一)  第十八章 Delphi客户服务器应用开发(二)  第十八章 Delphi客户服务器应用开发(三)  第十八章 Delphi客户服务器应用开发(四)  第十九章 Delphi自定义部件开发(一)  第十九章 Delphi自定义部件开发(二)  第十九章 Delphi自定义部件开发(三)  第十九章 Delphi自定义部件开发(四)  第二十章 开发Delphi对象式数据管理功能(一)  第二十章 开发Delphi对象式数据管理功能(二)  第二十章 开发Delphi对象式数据管理功能(三)  第二十章 开发Delphi对象式数据管理功能(四)  第二十章 开发Delphi对象式数据管理功能(五)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值