EHS Help in Delphi 7

Please post bug reports for earlier versions of Help & Manual (3 and 4) here, along with reports for TNT.

Moderators: Alexander Halser, Tim Green

Post Reply
nimzie
Posts: 1
Joined: Tue Apr 08, 2003 8:04 pm

EHS Help in Delphi 7

Unread post by nimzie »

I am using EHS Help in Delphi 7 so I can use the HTML help system. It works for menuitems but does not work when I hit F1. Seems like the windows.message is disappearing and never making it to the helprouter component.

Please advise.
User avatar
Alexander Halser
EC-Software Support
Posts: 4106
Joined: Mon Jun 24, 2002 7:24 pm
Location: Salzburg, Austria
Contact:

Unread post by Alexander Halser »

I recently discussed this with another user by email. Delphi 7 handles F1 calls directly. The event Application.OnHelp is never called by default, so the THelpRouter component has no chance to translate it to HTML Help.

Workaround:

(1) Include the option "biHelp" in the BorderIcons property of every form
(2) Use TWhatsThis along with THelpRouter on your main form
Alexander Halser
Senior Software Architect, EC Software GmbH
JeromeUK
Posts: 2
Joined: Tue May 13, 2003 7:52 pm

Unread post by JeromeUK »

Hi,

I am finished to b uild an application with Delphi (under Win XP) and try H&M. Smashing things up until I had to integreate with Delphi. Hlp file no probmel I knew how to do that manually before anyway so no problem. CHM file didn't work. So went to the web site ... find the proboem in the help file of the component ... try it with the biHerlp button in all my form (over 150) and still I have the message from winhelp. It seems to me that this solution doesn't send an appliation.OnHelp all the time neither.
If I put the WhatsThis component ... it doesnt do what I want in Hlp and does work neitheir in CHM. The only things which works is HelpRouter.HelpContent.

Do you plan to release a new set of component in order to have CHM file working with D7 ?

Thanks in advance

Jerome
User avatar
Alexander Halser
EC-Software Support
Posts: 4106
Joined: Mon Jun 24, 2002 7:24 pm
Location: Salzburg, Austria
Contact:

Unread post by Alexander Halser »

The demo application that comes with EHS was compiled with Delphi 7.
When I tested it the last time, it worked perfectly...

Could you give us a little bit more information, which kind of help function doesn't work? Are you calling Application.HelpCommand(command, value)? This command does trigger an Application.OnHelp event.
Alexander Halser
Senior Software Architect, EC Software GmbH
JeromeUK
Posts: 2
Joined: Tue May 13, 2003 7:52 pm

Unread post by JeromeUK »

Basically I have some code like that :
HelpContext := 20;
Application.HelpContext(20);

or latyer I will have before I call a form to be displayed
FrmCalculator.HelpContext := 1050;

Now with Hlp help all these works fine only when I have HTML help I receive the message that my help file might be corrupted (msg from WinHelp). So I did what you said regarding the biHelp border icon but I have the index of my HTML help file displayed (but not the context sensitive one) and then the message that the help file is corrupted from Winhelp.

Can you help because I am trying now different alternative of your components which will be ver a shame as I find TNT is a great program and I really whish I will be able to buy (if I manage to make it work) H&M which is one the the greatest piece of work I saw for a long time.

Best regard

Here is the code I use to assign my HTML help file
Function FrmMaim.FindHTMLHelp (HelpFile : string) : boolean;
begin
Result := true;
try
if FileExists (HelpFile) then
begin
HelpRouter.HelpType := htHTMLHelp;
if HelpRouter.HTMLHelpInstalled then
begin
HelpRouter.Helpfile := HelpFile;
Application.HelpFile := HelpFile;
end
else
Result := false;
end
else
Result := false;
except
Result := false;
end;
end;
Post Reply