说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

怎样在VB中调用.chm帮助文件?

编辑:说三道四文库 发布时间:2017-07-22 04:49
HTML文档下载 WORD文档下载 PDF文档下载
我想在VB中调用.chm帮助文件,请高手指点。按一下command控件就显示自己编的.chm帮助文件。
如何调用chm帮助文件
我把帮助做成chm格式,请问如何在VB中调用?  
---------------------------------------------------------------  
 
在VB中调用CHM  帮助的几种方法    
 
一个应用程序不论编制得如何完美,在很多情况下用户还是会对如何使用它提出问题。  Visual  Basic  提供了对两种不同帮助系统的支持:传统的  Windows  帮助系统  (WinHelp)和新的  HTML  帮助(CHM帮助)。当我们制作好帮助文件后,就需要在程序的适当位置编写代码进行调用,本文将讨论几种在程序中调用CHM帮助文件的方法。    
方法一 使用F1键:  
这种方法最简单,只需如下代码即可:  
Private  Sub  Form_Load()    
App.HelpFile  =  app.path  &  "\help.chm"  '调用与主程序同目录下的help.chm帮助文件,按F1键调用  
End  Sub  
 
方法二  使用SendKeys方法:  
Private  Sub  Form_Load()    
App.HelpFile  =  app.path  &  "\help.chm"    
End  Sub    
private  Sub  CmdHelp_Click()    
SendKeys  "{F1}"  '发送击键到活动窗口    
End  Sub  
 
方法三  使用Shell函数:  
private  Sub  CmdHelp_Click()  
Shell  "hh.exe  help.chm",  vbNormalFocus  'help.chm为指定的帮助文件,可包含路径。  
End  Sub  
 
方法四  使用HtmlHelp函数:  
先声明如下API:  
Option  Explicit  
Private  Declare  Function  HtmlHelpA  Lib  "hhctrl.ocx"  (ByVal  hwndCaller  As  Long,  ByVal  pszFile  As  String,  ByVal  uCommand  As  Long,  ByVal  dwData  As  Long)  As  Long    
'hwndCaller指定调用者的窗口,pszFile指定要调用的文件,uCommand是发送给  HtmlHelp的命令,dwData是uCommand的参数。    
然后在过程中调用:  
private  Sub  CmdHelp_Click()  
dim  i  as  string  
i  =  app.path  &  "\help.chm"  '用变量i记录与主程序同目录下的help.chm帮助文件  
HtmlHelpA  Form1.hWnd,  i,  0,  0  
End  Sub  
 
方法五  使用ShellExecute函数:  
先声明如下API:  
Option  Explicit  
'声明API函数用于异步打开一个文档  
Private  Declare  Function  ShellExecute  Lib  "shell32.dll"  Alias  "ShellExecuteA"  (ByVal  hwnd  As  Long,  ByVal  lpOperation  As  String,  ByVal  lpFile  As  String,  ByVal  lpParameters  As  String,  ByVal  lpDirectory  As  String,  ByVal  nShowCmd  As  Long)  As  Long  
Private  Const  SW_SHOWNORMAL  =  1  
然后在过程中调用:  
private  Sub  CmdHelp_Click()  
dim  a  as  long  
Dim  b  As  String  
b  =  App.Path  &  "\help.chm"  '用变量b记录与主程序同目录下的help.chm帮助文件  
a  =  ShellExecute  (0,  "open",  b,  "",  "",  SW_SHOWNORMAL)  
End  Sub  
以上五种方法各有优缺点,从代码的简单上讲,建议使用第二种方法。从功能上讲,建议使用第五种方法,因其不只用于打开CHM帮助文件,还可用同样的格式打开、打印或查找一个文件或文档(参见该API的说明资料)。    


               问题解决,请结贴!
可以在工程/属性/通用页框中添加你的帮助文件
'******************************************* Html help 声明
Public Const HH_DISPLAY_TOPIC = &H0
Public Const HH_SET_WIN_TYPE = &H4
Public Const HH_GET_WIN_TYPE = &H5
Public Const HH_GET_WIN_HANDLE = &H6
Public Const HH_DISPLAY_TEXT_POPUP = &HE   ' Display string resource ID or
                                          ' text in a pop-up window.
Public Const HH_HELP_CONTEXT = &HF         ' Display mapped numeric value in
                                          ' dwData.
Public Const HH_TP_HELP_CONTEXTMENU = &H10 ' Text pop-up help, similar to
                                          ' WinHelp's HELP_CONTEXTMENU.
Public Const HH_TP_HELP_WM_HELP = &H11     ' text pop-up help, similar to
                                          ' WinHelp's HELP_WM_HELP.

Public Declare Function HtmlHelp Lib "hhctrl.ocx" Alias "HtmlHelpA" (ByVal hwndCaller As Long, ByVal pszFile As String, ByVal uCommand As Long, ByVal dwData As Long) As Long
'*******************************************

'调用*.chm中的某个页面

Private Sub cmd_style_Click()
    Dim hwndHelp As Long
    hwndHelp = HtmlHelp(hwnd, App.Path & "\MakeScript.chm::/eb_style.htm#1", HH_DISPLAY_TOPIC, 0)
End Sub
豌豆“荚”油!B轮融资1.2亿美元的豌豆荚 2013年终盘点:10款最精巧的硬件开发板 SquareWear:可替代Lilypad Arduino的开发板 开放数据:2014年最热门的竞争领域 IE11虚拟机免费面向广大开发者 九城搭建的一个以Hadoop为基础的大数据平台 Windows 8复杂性的代价到底有多大? 在发布前,第一代iPhone其实并不完善 市场占有率调查:iOS 7秒杀Android 4.4 AWS会赢、OpenStack会消亡、Connected Cars可防僵尸攻击 谷歌以32亿美金收购iPod之父的创业公司Nest 物联网时代来临 微软2014,有你期待的吗? 映趣科技发布inWatch Z/inWatch X 后者采用全彩透明柔性屏 程序员没有天才:暴风影音首席架构师鲍金龙访谈 开放式创新改变世界——OpenStack生态系统将重新洗牌 Java 8最终发布日期敲定,即使有bug也要发布 Meteor PK Django,谁更适合开发实时Web应用? 学编程就像选家具:去宜家还是从种树开始? 前车之鉴 十二个年度最差设计网站汇集 冷暖交替,2014年编程兴衰趋势预测 诺基亚出Android手机,微软或将受惠 苹果不收购Nest的大猜想 Netflix开源S3一致性提升利器S3mper Fi 《近匠》第06期:UCloud——目标!完整云服务 小三上位:Windows Phone不容忽视的契机 “详解Visual Studio 2013”全国巡讲北京站:无忧开发iOS及Android应用 Chrome最新版:快速静音及在Win8中建Chrome OS系统 雅虎COO Henrique de Castro因业绩不佳被解雇 分析比特币背后的数据算法,抢占背后巨大市场先机 美食菜谱将会成创业风口的两大理由 Windows XP杀毒软件更新 将被延至2015年7月 想当鼠标在某一个label上时,这个label就变色。请问,怎么能够最简单的实现这个功能(需要高手)? 有人认识小反吗?告诉她我在找她。 高分请教,如何用JAVA实现浏览局域网里的其他机子的目录。在线等待 winsock可否在internet下传输文件 简单问题,恢复有分!!! 界面问题——buider做出来的界面太普通了 简单问题,回复有分!!! 第一次放这么多的分>>>>>>>>>>请进来看看(一周以内结帖) (6)今夜狂放1000分,100分只给前3个,第一个来报到的50分,第二个30分,第三个20分:)需要分的来吧:)前500分已经放出。。 简单问题,回复有分!!! 100分紧急求救:因在asp网页中需用www.myweb.com.cn/ok.asp url,我的win2k server该怎样配置? 大家好,我现在正做俄罗斯方块,大家能跟我说他的基本思想吗? 我想这是大家都想要的东西? 简单问题,回复有分!!! web server是不是就是用php等语言写后台程序? 页面间参数传递的问题!(结贴率100%) tocamt服务的自动启动和手工启动有何区别? 请教:金山词霸的屏幕取词用的是什么技术。是怎么实现的 用Delphi的朋友,公布我们的MSN帐号,大家互相学习好吗? 哪里有weblogic6.1 sp4 下载!!! window.print怎样才能不在页底打印页面的标题地址信息? 我的显示器怎么会有重影?? 请问如何用jsp实现如vb中的SSTab控件那样的效果? 有没有消息分数线什么时候出来啊??? 源码大放送2(注:适合新手以及和我一样懒的人!! ~v~) UTF-8?将字符转成UTF-8用PHP如何做??急? 类似matlab中simulink的界面如何实现?散分 关于分页显示的问题 截获getprocaddress遇到的问题. 請各位幫幫忙,關於剛開始安裝的問題: sql 查询? 怎样判断程序是否在运行,如果运行怎样关闭他呢? POP3邮件接收问题!!! 几个月来一直未解决的小BUG(多文档的标题) PB中怎么样定义游标变量 本人欲求计算机画图中的橡皮筋技术画线例程,请大家指教并加相关注释,先帖出代码都得分. 只为试一下新下的放分机,10钟后结贴 急急急!!!!!!!!!如何用ADO连接Sybase数据库? 这是广告,不知道是不是真的,没兴趣不要看啊 求购工程设计院信息管理集成系统的设计文档与源代码 想通了过问题,散分 那位大哥做过网络规划,系统集成方面的,我想电话求教,能帮个忙吗??? how to get chinese type method? 如何响应键盘事件? (7)今夜狂放1000分,8:15结帐:)需要分的来吧:)前600分已经放出。。 小问题,恳请帮忙,在线等候! 如何实现两个数据库之间的实时通讯? 高分请教,如何用JAVA实现浏览局域网里的其他机子的目录。在线等待 主板上是USB1。0的接口用USB2。0标准的移动硬盘,有办法安装使用吗?(在线等候) 探讨一下JSP的多国语言实现 这样一个功能怎么实现(在线等待) 大学音乐老师赵晗 好声音舞台释放多年唐玄宗御笔手书藏头“朕略萌” 网友林妙可夏威夷度假 发胖晒泳装照变半熟清华男神刘也行 刷新一站到底记录好声音刘籽辰:用实力证明我不是一个娘分班倒计时 哈林奋起直追狂揽五名好声塔斯肯成遗珠 好声音史上最遗憾学员去徐娇16岁生日晒萝莉照 变身校园萌妹梦粥扒皮“好声音” 谜团八:选手转身梦粥扒皮“好声音” 谜团七:导师最不梦粥扒皮“好声音” 谜团六:为什么他梦粥扒皮“好声音” 谜团五:汪峰是否梦粥扒皮“好声音” 谜团四:“东北好香港小姐20强出炉 遭网友犀利吐槽梦粥扒皮“好声音” 谜团三:失败学员梦粥扒皮“好声音” 谜团二:成名歌手梦粥扒皮“好声音” 谜团一:学员会被韩红接连两日违反交通法规 微博致歉真正的中国好声音塔斯肯 “拿什么留住“好声音倪鹏” 火车司机的音乐梦想“槿汐姑姑”孙茜大婚 甄嬛小主们重聚英拉出国旅行申请遭驳回人勤春来早寒假“安全作业”创业须有“善败”的准备张家宝同志逝世中科大研制出新型水凝胶国内钢价跌幅收窄皖江示范区倾力打造创新高地省委政法工作会议召开“个人税号”不可小觑我省著名商标达2343件清除“国企蛀虫”探月工程完成嫦娥五号调相试验信息公开,如何让公众更满意?NBA每日一囧:哈登被小弟篡权 邓肯魏秋月术后回国膝伤未彻底恢复 走路仍美候任国防部长称将研制核巡航导弹 应收钱放行 按岗分赃我省首个养老服务园开建外贸弱势开局 出口压力增大朝鲜发射5枚疑似短程导弹
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘