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

以前很羡慕微软提供的程序,一按窗体上的“?”按钮,然后在相关选项上单击,就可以弹出一个方形框,里面即时显示相关的帮助。并且在不同的窗体按“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&reg; HTML Help Workshop 4.1">
<!-- Sitemap 1.0 -->

... ...

阅读更多

【叶帆文章】用VB开发绿色软件

03-23

【原文链接】:http://blog.csdn.net/yefanqiu/archive/2005/03/23/328039.aspxrnrn我认为的绿色软件就是免安装,短小精干的软件,目前的大部分共享软件都属于此类(或向绿色软件靠拢)。rn连比较大的phoshop软件也把一些注册项放到一个专门的注册文件(reg文件)里,到时重装的操作系统,只需把reg文件导入的注册表即可。此外比如金山软件,基本上都是不用安装,即可运行。rn目前绝大部分的共享软件都是用delphi做的,虽然它的pascal语法让人别扭,可大家还是坚持用,最好的理由就是,它做绿色软件很方便,一个Exe文件基本上什么都搞定了。rn用VC做共享软件吧,如果是基于API开发(非MFC)总是有点杀鸡焉用牛刀的感觉(目前的机器配置都比较高,共享软件一般都是应用方面的小程序,不像服务器,对性能要求那么高,再说,用VC开发,周期也相对较长)。rnMFC虽然开发相对比较快速,但是也存在一个运行库问题,做成动态链接吧,windows 9X系列的用户无法使用,编译成静态链接吧,软件尺寸一下扩充了1M多,在网络带宽还不富裕的情况下,还是少用为妙。rn用VB做绿色软件,也有很多这方面的介绍,不过一个稍微复杂的程序,也带上好多嫁妆:vb运行库,ocx控件等等,如果软件中还使用了数据库(如ADO,DAO等),那能不能做成绿色软件还是个未知数。rn不过VB易上手,开发软件较为快速,如果API技术掌握的较好的话,大部分软件都可以较好的实现。如果用VB做共享软件,开发即轻松,又可以增加额外收入,何乐而不为呢?rn可是上面所说的问题该如何解决呢?结合我的体会和开发了部分绿色软件的基础上我谈谈我的看法,不当之处,请方家斧正。 rnrn第一、针对运行库的问题可以这样解决。目前大部分的用户都是Win2000、XP平台,而win2000以上的平台微软已为我们把运行库添加到系统目录了。(关于这一点,delphi用户很不满,认为这是不公平竞争,VB的运行库、MFC的运行库都集成到系统了,这样delphi至少在软件大小上已远远的落后VB和MFC开发的软件了),所以这部分用户不用考虑运行库的问题,对9x系列的用户,可以把VB运行库放在网上,需要的话让用户直接从网上下载。如果你觉得不介意软件尺寸的话,也可以把运行库和你的软件一起发布(直接把运行库放到当前软件的同一目录即可)。rn目前虽说微软不支持VB了,但是只要Windows的后续版本照样集成VB运行库,用VB开发共享软件还是大有前景的(微软上百兆.net平台都敢集成,更何况区区1.25M的VB运行库呢?我对此乐观:)rnrn第二、如果用VB开发共享软件,我建议仅用VB的基本控件,此外不要用DAO,ADO等数据库操作控件(或引用),如果操作数据,我建议自己定义数据库格式(可以仿照dBase等数据库格式),在数据量不算大的情况下(比如1万条记录以下),完全可以这样做,目前的用户机器都比较高档,没必要考虑太多的性能问题。这样的话仅需要运行库即可运行VB程序,在Win2000以上系统,直接就可以运行。rnrn第三、软件界面为了美观,直接用image控件贴图即可,这种方式我一直爱用。对多语言版本,可以采用读取ini文件方式,也可以直接读取VC编译的纯资源文件(可以参考我写的一篇文章:VB动态加载纯DLL资源(http://blog.csdn.net/yefanqiu/archive/2005/03/16/320640.aspx)。rnrn第四、软件开发完毕后,最好用exe压缩软件压缩一下,这样有两个好处,一是对被人破解加了一个障碍,二是,软件尺寸大大减小,利于发布。rnrn第五、至于加密,那是仁者见仁,智者见智的事了,这里我就没必要多谈了。rnrn=================================rnrn欢迎大家交流,跟贴有分rn

没有更多推荐了,返回首页