Most Windows applications include the following commands in the helpmenu:
Contents Search For Help On... How To Use Help
Although VB doesn’t provide direct support for these commands,they can easily be added to your VB applications by accessing the WindowsAPI directly. The required declarations are listed here and should appearin one of your application’s BAS files:
'Function declaration Declare Function WinHelp Lib "User" _ (ByVal hWnd As Integer, ByVal lpHelpFile _ As String, ByVal wCommand As Integer, _ ByVal dwData As Any) As Integer 'Global constants Global Const HELP_QUIT = 2 Global Const HELP_INDEX = 3 Global Const HELP_HELPONHELP = 4 Global Const HELP_PARTIALKEY = &H105
Add the new menu items and name them mnuHelpContents, mnuHelpSearchand mnuHelpHowToUse, respectively. The handlers for each of these commandsshould look like this (Change the first argument to WinHelp (Form1.hWnd)to reference the main form in your application and set App.HelpFile toyour application’s help file when your application starts):
'Contents command Sub mnuHelpContents_Click () Dim i As Integer i = WinHelp(Form1.hWnd, App.HelpFile, _ HELP_INDEX, 0&) End Sub 'Search For Help On... command Sub mnuHelpSearch_Click () Dim i As Integer i = WinHelp(Form1.hWnd, App.HelpFile, _ HELP_PARTIALKEY, "") End Sub 'How To Use Help command Sub mnuHelpHowToUse_Click () Dim i As Integer i = WinHelp(Form1.hWnd, App.HelpFile, _ HELP_HELPONHELP, 0&) End Sub
To make sure Windows Help unloads when your application terminates,place this code in your main form’s Unload event:
'Unload WINHELP.EXE Sub Form_Unload (Cancel As Integer) Dim i As Integer i = WinHelp(frmMain.hWnd, App.HelpFile, _ HELP_QUIT, 0&) End Sub