Types of HTML Help

From RAD Studio
Jump to: navigation, search

Go Up to Calling HTML Help from Applications

User applications can use several help formats under Windows:

CHM--HTMLHelp

HTMLHelp is Microsoft Compiled HTML Help format. HTMLHelp is a proprietary online help format under 32-bit Windows. It was introduced as the successor to the Microsoft WinHelp format with the release of Windows 98 and is still supported in Windows 7. This is the most popular Windows help format.

HTMLHelp help files are delivered as binary files with the CHM extension. A CHM file contains a set of HTML files, a hyperlinked table of contents, and an index.

Viewers of CHM help files are supplied with Windows operational systems. The HTMLHelp function provides the API of the help viewer of CHM help files.

RAD Studio VCL provides the Vcl.HtmlHelpViewer unit that implements the Delphi and C++ wrappers for the HTMLHelp function API. To use CHM-format help files in your VCL applications, you need to include the Vcl.HtmlHelpViewer unit into the uses section of the main form of your VCL application. For C++, you need to include the Vcl.HtmlHelpViewer.hpp header file. (See HTMLHelp topics in MSDN for additional information.)

This is the offline help system that RAD Studio uses. See Help on Help - CHM.

HXS--HTML Help 2.0 Microsoft Help

The HTML Help 2.0 format is used by Visual Studio 2002 through 2008.
HTML Help 2.0 files have the HXS extension. Compiled HXS help files contain HTML source files.

Each HXS help file collection must be registered (in the Windows Registry) before it can be viewed. Your application can execute such registration either with the specially programmed installer or using a special third-party registration tool.

HXS help files can be viewed with the Microsoft dexplore.exe Help Viewer or with third-party viewers. Viewers for HXS files are not supplied with any Windows system.

API of dexplore.exe is not officially documented, and RAD Studio does not provide any unit that wraps dexplore.exe API.

Notice that the Microsoft Help 2 format is designed primarily for Visual Studio help integrators. Microsoft does not recommend the usage of HXS help files in general applications.

MSHC--Microsoft Help 3

MSHC Help is also known as Microsoft Help 3 or Microsoft Help Viewer 1.x. This format supersedes Microsoft Help 2.

The format of the topic files is XHTML 1.x (compatible with HTML). A help file has an MSHC (Microsoft Help Container) file extension and is a standard Zip file containing topic files. A MSHC help file does not contain any proprietary files, just topic files. Standard HTML meta tags are used to define various topic attributes, including the Table of Contents (TOC), Index, and Keywords.

MSHC help files can be viewed with any Web browser.

A help compiler is not required.

The MSHC help format has the potential of becoming the next general (Unicode-based) help system for Windows.

RAD Studio does not provide any support for MSHC help.

From RAD Studio applications, you can open MSHC help files using the ShellExecute function.

To use ShellExecute in your applications, you need to include the ShellAPI unit in the uses clause of the main form of your application. For a description of ShellExecute, see the MSDN help. The RAD Studio RTL declares ShellExecute in the "source\rtl\win\ShellAPI.pas" file.

HLP--WinHelp (deprecated)

Beginning with Windows Vista, Microsoft has deprecated the HLP help format. Therefore, the usage of HLP help and of the WinHelpViewer unit is deprecated.

Microsoft WinHelp is a proprietary format for online help files under 16-bit and 32-bit Windows, from the Windows 3.0 platform through Windows XP. The WinHelp format help files have the HLP extension. The WinHelp format is based on Rich Text Format (RTF) documents.

To view HLP help files, you can use the Microsoft Help browser winhelp.exe or winhlp32.exe. The WinHelp function provides the API of help viewer of HLP help files.

RAD Studio VCL provides the WinHelpViewer unit that implements the Delphi and C++ wrappers for the WinHelp function API. To use the HLP format help in your VCL applications, you need to include the WinHelpViewer unit into the uses section of the main form of your VCL application. To download the WinHelp viewer, visit the Microsoft website: http://www.microsoft.com/downloads/details.aspx?familyid=6ebcfad9-d3f5-4365-8070-334cd175d4bb

Other HTML Help Formats

There are several other HTML help formats, the most common of which are the following:

  • HTML Help--A set of interlinked HTM/HTML files.
These files can be viewed in any web browser.
RAD Studio does not provide any support for HTML Help.
From RAD Studio applications you can open HTML help topics using the ShellExecute function.
  • WebHelp--A collection of individual (HTML) files that are not compressed or compiled. WebHelp is convenient for publishing on a Web or intranet server. WebHelp can also be deployed as locally installed Help.
WebHelp files can be viewed in any web browser.
RAD Studio does not provide any support for HTML Help.
From RAD Studio applications you can open HTML help topics using the ShellExecute function.

See Also