The WinHelp function starts Windows Help (WINHELP.EXE) and passes additional data indicating the nature of the help requested by the application. The application specifies the name and, where required, the directory path of the help file to display.
BOOL WinHelp(
HWND hWndMain, | // handle of window requesting Help |
LPCTSTR lpszHelp, | // address of directory-path string |
UINT uCommand, | // type of Help |
DWORD dwData | // additional data |
); |
Parameters
hWndMain
Identifies the window requesting Help. The WinHelp function uses this handle to keep track of which applications have requested Help.
lpszHelp
Points to a null-terminated string containing the path, if necessary, and the name of the Help file that the Help application is to display.
The filename may be followed by an angle bracket (>) and the name of a secondary window if the topic is to be displayed in a secondary window rather than in the primary window. The name of the secondary window must have been defined in the [WINDOWS] section of the Help project (.HPJ) file.
uCommand
Specifies the type of help requested. For a list of possible values and how they affect the value to place in the dwData parameter, see the Remarks section.
dwData
Specifies additional data. The value used depends on the value of the uCommand parameter. For a list of possible values, see the Remarks section.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero.
Remarks
Before closing the window that requested Help, the application must call WinHelp with the uCommand parameter set to HELP_QUIT. Until all applications have done this, Windows Help will not terminate. Note that calling WinHelp with the HELP_QUIT command is not necessary if you used the HELP_CONTEXTPOPUP command to start Help
The following table shows the possible values for the uCommand parameter and the corresponding formats of the dwData parameter:
uCommand | Action | dwData |
HELP_COMMAND | Executes a Help macro or macro string. | Address of a string that specifies the name of the Help macro(s) to execute. If the string specifies multiple macros names, the names must be separated by semicolons. You must use the short form of the macro name for some macros because Help does not support the long name. |
HELP_CONTENTS | Displays the topic specified by the Contents option in the [OPTIONS] section of the .HPJ file. This is for backward compatibility. New applications should provide a .CNT file and use the HELP_FINDER command. | Ignored, set to 0. |
HELP_CONTEXT | Displays the topic identified by the specified context identifier defined in the [MAP] section of the .HPJ file. | Unsigned long integer containing the context identifier for the topic. |
HELP_CONTEXTPOPUP | Displays, in a pop-up window, the topic identified by the specified context identifier defined in the [MAP] section of the .HPJ file. | Unsigned long integer containing the context identifier for a topic. |
HELP_FORCEFILE | Ensures that WinHelp is displaying the correct help file. If the incorrect help file is being displayed, WinHelp opens the correct one; otherwise, there is no action. | Ignored, set to 0. |
HELP_HELPONHELP | Displays help on how to use Windows Help, if the WINHELP.HLP file is available. | Ignored, set to 0. |
HELP_INDEX | Displays the Index in the Help Topics dialog box. This command is for backward compatibility. New applications should use the HELP_FINDER command. | Ignored, set to 0. |
HELP_KEY | Displays the topic in the keyword table that matches the specified keyword, if there is an exact match. If there is more than one match, displays the Index with the topics listed in the Topics Found list box. | Address of a keyword string. |
HELP_MULTIKEY | Displays the topic specified by a keyword in an alternative keyword table. | Address of a MULTIKEYHELP structure that specifies a table footnote character and a keyword. |
HELP_PARTIALKEY | Displays the topic in the keyword table that matches the specified keyword, if there is an exact match. If there is more than one match, displays the Index tab. To display the Index without passing a keyword (the third result), you should use a pointer to an empty string. | Address of a keyword string. |
HELP_QUIT | Informs the Help application that it is no longer needed. If no other applications have asked for Help, Windows closes the Help application. | Ignored, set to 0. |
HELP_SETCONTENTS | Specifies the Contents topic. The Help application displays this topic when the user clicks the Contents button. | Unsigned long integer containing the context identifier for the Contents topic. |
HELP_SETINDEX | Specifies a keyword table to be displayed in the Index of the Help Topics dialog box. | Unsigned long integer containing the context identifier for the Index topic. |
HELP_SETWINPOS | Displays the Help window, if it is minimized or in memory, and sets its size and position as specified. | Address of a HELPWININFO structure that specifies the size and position of either a primary or secondary Help window. |
See Also