Integrate a Help file with Delphi's Help

Integrating with Delphi 7, 6, 5 and 4
Time2HELP generates the necessary A-keywords (as well as many K-keywords), which Delphi uses for context sensitive help from within the IDE. If Compiler Version is set to 'Delphi 6' or later, Time2HELP also generates an .als file necessary for integrating help files with these versions of Delphi.

To get context sensitive help, what you (or your library/component users) must do is to either add the K-keywords of your help file to Delphi's index, or just link to it. A detailed description on this can be found in the following two topics:

Preparing the help file for integration with Delphi IDE
Adding the help file to the Delphi IDE

Integrating with Delphi 3
To get context sensitive help in Delphi 3, you must add the K-keywords of your help file to Delphi's index by using an ":Index" statement, or link to it by using a ":Link" statement.
One way to do this is to open the Delphi3.cnt file (in the Delphi\Help directory), and add an 'index' statement to its index section.

:Base delphi3.HLP>main
:Title Delphi Help

; Index section
:Index VCL Object and Component Reference=vcl3.hlp
:Index Object Pascal Reference =obpascl3.hlp
:Index MyLibrary=MyLibrary.hlp
(The last line shows how to add the index of the help file MyLibrary.hlp into Delphi's main help index)

If you generate/build a contents file for your help file as well, you can add a the following to the end of Delphi3.cnt:
:Include MyLibrary.cnt

Registry entries
WinHelp needs to find your help file. If you don't want to keep it in Delphi's help directory, you should add path info similar to the following to your (and your users) registry in the HKEY_LOCALMACHINE\Software\Microsoft\Windows\Help key:
Value Name: MyLibrary.hlp
Value data: C:\Dev\Delphi\MyLibrary\Help
(And a similar entry for the .cnt if any)


Integrating with Delphi 2 (and 1)
The 16-bit WinHelp system doesn't have the feature which Borland currently uses for integrating help files with Delphi 3. They invented a special scheme to do this for Delphi 1, which they also used for Delphi 2. This includes the concept of a keyword file (.kwf), and a corresponding utility (kwgen.exe) to build keyword files from help projects. The kwgen utility works by scanning the rtf files in a help project, extracting K and B (for Borland) keywords. The resulting kwf files are included into Delphi 2 (and 1)'s help index file (Delphi.hdx) by a special HelpInst.exe utility.

A big drawback with the kwgen utility is that is doesn't understand long filenames, which the files generated by Time2HELP typically use.
In order to overcome this limitation, and to make the process more user friendly, we buildt the same functionality as kwgen.exe offers directly into Time2HELP. You control this feature by using the "Build keyword file" checkbox. If you don't need kwf files, please uncheck this checkbox, as it takes some time to build the .kwf file.


Note about Delphi 1
We have not tested Time2HELP with regard to building 16-bit help files. It should be possible to build 16-bit help files by customizing the template file (remove WinHelp 4.0 specific features), copy the .rtf files to a separate location and rename them to shorter name (and to the same to a copy of the .hpj file) and then compiling the .hpj file "manually" with a Win3.x help compiler.

If anyone have actually tried to do this (with or without success), please feel free to contact us.

HTML generated by Time2HELP