Watch, Follow, &
Connect with Us

Please visit our new home

Public Report
Report From: Delphi-BCB/VCL/Core VCL Classes/TApplication    [ Add a report in this area ]  
Report #:  9892   Status: Reported
Context Help failure
Project:  Delphi Build #:  2600 SP 1
Version:    9.0 Submitted By:   Simon Bevan
Report Type:  Basic functionality failure Date Reported:  12/14/2004 4:22:26 AM
Severity:    Serious / Highly visible problem Last Updated: 6/16/2005 4:54:04 AM
Platform:    All versions Internal Tracking #:  
Resolution: None  Resolved in Build: : None
Duplicate of:  None
Voting and Rating
Overall Rating: (3 Total Ratings)
5.00 out of 5
Total Votes: None
Context sensitive help code that works under Delphi 6 fails when compiled under Delphi 2005.

Gives error message EHelpSystemException 'No context sensitive help installed'.

Either there is something simple I have failed to do and failed to find in any documentation - or there is a bug.
Steps to Reproduce:
Create VCL project for Win32 in Delphi 2005
In the resulting form, create an OnCreate procedure
Add the following 2 statements
  Application.HelpFile := ExtractFileDir(Application.ExeName)+'\'+'TestHelp.hlp'; {change this to an available & known .hlp file}
  Application.HelpContext(9999); {change this to a known context}
(I would send the sample test help file if I could add an attachment to this report)

Run the program to create the error

The same procedure compiled under Delphi 6 works perfectly.


Michael Fritzsche at 2/5/2005 12:30:06 PM -
Try this:

Ricardo Obreg n at 10/6/2005 3:37:22 PM -
You must add WinHelpViewer or HtmlhelpViewer in the use clause of the project source.

Michael Fritzsche at 10/24/2005 7:29:27 AM -
Sorry, but this does'nt work! The only effekt of this is to remove the error-message... but the help wont be opened.

Michael Fritzsche at 11/27/2005 10:38:50 AM -
Now i found the bug! ;)
There must be a bug in WinHelpTester... unfortunately Borland dont give the sources for it, but you only have to change the function "UnderstandsTopic" in WinHelpViewer.pas to return true.

Here you can download a patchtool:

Massimo Dedin at 11/14/2014 12:56:19 AM -
I solved this problem with this include in C++ Builder:

#include "Vcl.HTMLHelpViewer.hpp"
#pragma package(smart_init)       //avoids EHelpSystemException
#pragma link "Vcl.HTMLHelpViewer" //avoids EHelpSystemException

I guess in Delphi it's something like this:

uses Vcl.HtmlHelpViewer

Server Response from: ETNACODE01