HTML Help - Delphi Bugs
- #1 The Parenting Bug
#2 Delphi COM causes access violation when Hosting HH
#3 Delphi 6/7 OnHelp event is broken
#1 The Parenting Bug
- Brief:
- When Delphi 3 or 4 applications host Help using the HTML Help 1.0 or 1.1 API a
serious parenting bug makes help useless.
- Detail:
- o Launch a CHM help file from a Delphi application (via API call).
o Now leave the help up and open a modal dialog.
The help window is now locked between windows.
This is always a problem when accessing the same help file from different windows in an
application.
- Fix:
- 1. Upgrade to Html Help version 1.2 or later.
http://www.microsoft.com/workshop/author/htmlhelp/
2. Launch help via a second application. EG. hh.exe or keyhh.exe.
http://www.keyworks.net/keyhh.htm
3. Try using zero as the first parameter.. eg. htmlhelp(0, ,,);
-
#2 Delphi COM causes access violation when Hosting HH
- Brief:
- Get access violation when hosting HTML Help which in turn hosts a Delphi COM object.
- Detail:
- If a Delphi application hosts HTML Help API which in turn hosts IE which in turn hosts a
Delphi ActiveX helper then an access violation occurs.
o Sometimes only seen on NT4 and Win98 machines.
o Very Serious! Can lock Windows into an endless error loop.
- Fix:
- 1. Launch help via a second application. EG. hh.exe or keyhh.exe.
http://www.keyworks.net/keyhh.htm
-
#3 Delphi 6/7 OnHelp event is broken
- Brief:
- Delphi 6/7 Form.OnHelp and Application.OnHelp events are partially broken.
- Detail:
- The easiest way to redirect an application's help calls is to hook the OnHelp event. All help events for the entire application are redirected to a single function. Delphi 6
& 7 has broken the OnHelp event.
- Fix:
- The fix requires a Unit of code to catch the missed help events.
Download the D6/7 Fix.