在VB应用程序中加入帮助文件的三种方法

Author: 刘强 Date: 1997-01-01

  本文介绍了笔者在进行Windows应用程序开发中实现Windows联机帮助的三种方法(假设系统已经生成帮助文件*.HLP)。
  一、直接在程序组中加入帮助图标。Windows的帮助文件*HLP在Windows环境下能够利用Winhelp.exe直接打开,所以我们在使用VB的安装向导Setup Wizard或使用安装工具Setup Toolkit时,能够自动生成程序组,在Windows程序组中建立帮助图标,双击此图标就可自动启动Windows的联机帮助系统,其原理即为“Winhelp.exe *.hlp”这样一个命令行。
  二、使用通用对话框Command Dialog Box。通用对话框通过设置其属性Action可以创建六种标准对话框,分别为Open、Save As、Color、Font、Printer、Help。当Action属性值设为6时,就得到标准的Help窗口显示。其主要属性有:
  HelpCommand:用于指定Help帮助类型,即帮助信息命令。可以用HELP系统的常数HELP_KEY来给此项赋值,则帮助窗口就显示HELP的Keyword关键字指定的内容帮助。
  Helpfile:用来指定帮助文件的路径及文件名。
  HelpKey:用来指定帮助信息的内容。
  HelpContext:帮助文件上下文为HelpTopic指定上下文句柄。
  在程序设定了上述属性后,不要忘了加上“ACTION=6”这一行。
  三、调用Windows的应用程序接口API。Windows的API函数WinHelp就是在Windows应用程序中加入帮助文件的函数。在VB中使用Windows的API函数,必须在全局变量中进行声明:
  Declare Sub WinHelp Lib "User"(ByVal hWnd As Integer,ByVal lpHelpFile As String,ByVal wCommand As Integer,ByVal dwData As Long)
  同时也必须对所使用到的Help常量作一声明:
  Global Const HELP_CONTEXT=&H1'Display topic in ulTopic
  Global Const HELP_QUIT=&H2'Terminate help
  Global Const HELP_INDEX=&H3'Display index
  Global Const HELP_KEY=&H101
  Global Const HELP_COMMAND=&H102
  然后就可以在程序中象使用Visual Basic自带的函数一样使用Windows的WinHelp函数了。如下例就可以在应用程序中调用Windows的HELP帮助系统。
  WinHelp frmmain.hWnd,"d:\vb30\jbzx.hlp",HELP_CONTEXT,HELP_CONTENTS