【叶帆文章】CHM帮助文件在VB程序中的应用

叶帆 2005-12-21 03:34:44
以前很羡慕微软提供的程序,一按窗体上的“?”按钮,然后在相关选项上单击,就可以弹出一个方形框,里面即时显示相关的帮助。并且在不同的窗体按“F1”键,它能弹出相关页面的帮助。觉的很神奇,也一直想做一个,但苦于没有相关的介绍和源码,所以迟迟没有实现,直到有一天,发现公司软件开发到一定程度,必须面对帮助的开发了,所以不得不硬下头皮,一点点研究chm帮助文件的制作和在VB程序中的应用。 现在好了,后来人可以看我做的这个示例和相关介绍文档,一定会非常快速的掌握chm帮助在VB中的应用
【文章链接】http://blog.csdn.net/yefanqiu/archive/2005/12/21/558261.aspx
【源码地址】http://www.bjjr.com.cn/YeFan/SourceCode/yfchmvb.rar
【示例图片】http://blog.csdn.net/images/blog_csdn_net/yefanqiu/23649/o_15.gif
【部分文章】

一.工欲利其事,必先利其器――CHM制作之工具
1. 首推微软门下的专门工具HTML Help Workshop,它是制作chm帮助文件最权威、功能最全的工具(但不是最快的工具),下载地址:
http://down1.tech.sina.com.cn/download/downContent/2004-03-16/7463.shtml
2. PowerCHM等一些快速制作chm的帮助文件的程序也是很好的选择,配合HTML Help Workshop的使用,更是如虎添翼。
3. HTML Help Workshop一些汉化软件使用起来,好像有些问题,所以还是推荐使用英文原版。

二.寻根探源――CHM源文件之组成
1. 项目文件(.hhp):类似VB程序中的vbp文件,其内容格式类似ini文件,主要包括如下几部分:
a). [OPTIONS] 基本参数设置:
Compiled file=YFHelp.chm //编译后的chm文件名
Contents file=YFHelp.hhc //目录文件名
Index file=YFHelp.hhk //索引文件名
Title=叶帆帮助 //chm窗口标题
Default Window=main //主窗口,与[WINDOWS]字段下的窗体对应
b). [WINDOWS] 帮助窗口设置:
main="叶帆帮助","YFHelp.hhc","YFHelp.hhk","HTML\YF1.htm","Html\YF1.htm",,,,,0x20,180,0x104E,[100,100,900,700],,,,0,0,0,0
主要包括如下内容:窗口名称、目录文件、索引文件、默认主页、首先页、窗口大小和初始位置。
c). [FILES] 帮助组成文件:
HTML\YF1.htm //针对hhp文件存放位置的相对路径
HTML\YF2.htm
HTML\YF3.htm
d). [TEXT POPUPS] popup弹出帮助的源文件设置:
YFPopups.txt // popup弹出帮助的源文件路径
e). [MAP]映射文件设置:
#include YFheader.h //类似C语言的头文件,主要是一些常数的宏定义
f). [ALIAS] 别名设置:
IDH_HELP1=Html\YF1.htm // IDH_HELP1在YFheader.h有定义
IDH_HELP2=Html\YF2.htm // IDH_HELP2在YFheader.h有定义
IDH_HELP3=Html\YF3.htm // IDH_HELP3在YFheader.h有定义
2.目录文件(.hhc)
该文件定义chm文件的树型目录,类似网页文件,格式如下:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<meta name="GENERATOR" content="Microsoft® HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->

... ...




...全文
535 点赞 收藏 41
写回复
41 条回复
laidon 2006年03月05日
真不错!
回复 点赞
setsailgo 2006年03月04日
up
回复 点赞
truewill 2006年03月04日
好文章啊,收藏!!
回复 点赞
fxj331072 2006年03月04日
学习
回复 点赞
yingjm 2006年03月04日
好东西,谢谢楼主
回复 点赞
笨狗先飞 2006年03月04日
mark
回复 点赞
kunlunlang 2006年03月04日
回复 点赞
IamDeane 2006年03月04日
呵呵,谢谢老大的分享
回复 点赞
cxianfa 2006年03月04日
谢谢哦
回复 点赞
gzhoney 2006年01月03日

回复 点赞
faysky2 2006年01月03日
up
回复 点赞
wzzwwz 2006年01月03日
真遗憾,叶帆回答我的问题的那个帖子没有了。。。。。。。
回复 点赞
叶帆 2006年01月03日
up
回复 点赞
wzzwwz 2005年12月24日
叶帆老师,帮忙看看这里的帖子,关于您这篇文章的
http://community.csdn.net/Expert/TopicView.asp?id=4478645
回复 点赞
叶帆 2005年12月23日
up
回复 点赞
peterb 2005年12月22日
谢谢分享,我也有过在VB中调用CHM帮助的经历,特别是不同窗口,需要显示不同的帮助信息时候,以前不知道如何处理,看了你的文章,又让我偷学到了一个处理方法,还有popup式的帮助,不同错误提示,显示不同的帮助,这些我都可以实现了,谢谢了!
回复 点赞
foreverstar2004 2005年12月22日
楼主好人,学习,帮顶!   给分!!!!!!!!
回复 点赞
wxrwan 2005年12月22日
up
回复 点赞
wzzwwz 2005年12月22日
崇拜+学习
回复 点赞
cool_man 2005年12月22日
好东西呀
回复 点赞
发动态
发帖子
VB基础类
创建于2007-09-28

2748

社区成员

19.7w+

社区内容

VB 基础类
社区公告
暂无公告