Home » Tutorials » Tools » HTML-Hilfe

HTML-Hilfe

Einbindung in Delphi

Die eigentliche Herausforderung, weshalb dieses Tutorial auch auf einer Delphi-Website zu finden ist, ist nun die Einbindung der CHM-Datei in ein Delphi-Programm. Wie üblich gibt es von Microsoft Unterstützung für C++, aber nicht für Delphi. Und Borland berücksichtigt bislang nur das HLP-Format.
Aber die Delphi-Community wäre nicht die Delphi-Community, wenn sich niemand dieses Problems angenommen hätte. So gibt es sogar gleich zwei Lösungen:

Project JEDI – Header-Übersetzung

Marcel van Brakel aus den Niederlanden hat sich die Arbeit gemacht, die Schnittstelle zur Ansteuerung der HTML-Hilfe von C++ nach Delphi zu übersetzen. Das Ergebnis, eine Delphi-Unit (htmlhlp.pas), ist auf der Website von Project JEDI kostenlos downloadbar.
Der Einsatz dieser Header-Übersetzung ermöglicht es Delphi-Programmierern, alle Befehle zu nutzen, die die HTML Help API zur Verfügung stellt.

The Helpware Group

Die Helpware Group unter Leitung des Australiers Robert Chandler bietet ein „HTML Help Kit for Delphi“ als Freeware an. Es besteht aus zwei Units (hh.pas, hh_funs.pas) sowie einem Fix für Delphi 6 und höher (D6OnHelpFix.pas).
Das HTML Help Kit unterscheidet sich von der JEDI-Unit dadurch, dass der Einsatz der HTML-Hilfe dadurch genauso einfach wird wie der der HLP-Hilfe: Es kann direkt die HelpContext-Eigenschaft der visuellen Komponenten verwendet werden, so dass nicht jeder einzelne Hilfe-Aufruf programmiert werden muss. Über einen Hook fangen die Helpware-Units die Hilfe-Aufrufe (die standardmäßig ja an WinHelp (.hlp) gehen) ab und leiten sie an die HTML-Hilfe weiter.
Mit freundlicher Erlaubnis von Robert Chandler dürfen wir das Kit samt Fix hier zum Download anbieten:
HTML Help Kit for Delphi (28 KB)
Fix für Delphi 6 und 7 (8 KB)
Da das HTML Help Kit für unsere Zwecke einfacher zu verwenden ist, werden wir im weiteren Verlauf des Tutorials darauf zurückgreifen. Sicher gibt es aber auch Fälle, in denen die reine Header-Übersetzung angebracht ist.