• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 244
  • Last Modified:

I need help (sorry, couldn't resist)

I want my application to have some help system (the F1 thingy). Actually my boss does. I've never done this before and I don't know how to use TApplication.HelpJump, HelpCommand, HelpContext. Links and tutorials are welcome. Thanks!
0
__alex
Asked:
__alex
1 Solution
 
Wim ten BrinkCommented:
My boss once told me that one application needed a helpfile too. I then told him that he would need to hire a helpfile writer if he really wanted this because writing a helpfile isn't something a normal developer has to do. (Basically, you need some good writing skills for that, being able to write using a clear and easy to understand words, and make no spelling errors.) Once the helpfile would be ready, we would be able to integrate it within the application.
But my boss changed his mind again once he realised this. Using an expensive developer to write documentation that could also be written by a cheap, young writer is a huge waste of resources. But he also failed to find someone who could write that helpfile so the application is still without any help support. And the company went tits-up (not my fault) so it will never have a helpfile either...

Once the helpfile is created, you would get some file containing constants that will just help you to jump to the proper location in the helpfile.
0
 
__alexAuthor Commented:
I use the HLP file from my anti virus for testing. I guess it's done by a professional help file writer.
0
 
Wim ten BrinkCommented:
Yep. But don't you want to use a real, related helpfile instead? Tell your boss to let someone write the helpfile first before you include it in the application. That way, you have lots of time discovering how to do this while some poor student writer can start typing...
As a developer I've always refused to write helpfiles myself, simply because it's just a lot of typing that anyone could do. I consider myself to be too expensive for my company to be used for such simple tasks. And my boss did agree with this, since any time I waste on typing the helpfile, checking the spelling and whatever more means that other projects will have to wait until I'm finished.
The helpfile compiler will create the helpfile out of one or more *.rtf files and often creates a second file containing constants for the places that you can jump to. These constants are what you need in your code. Nothing more. You would use HelpContext() to jump to a location indexed by a number or HelpJump() to jump to a location indexed by a string. In the project options you assign the helpfile to your application. With HelpCommand() you just send commands to the help system. And finally several VCL components and dialogs might have a help index from those constants assigned to them, just automating the whole help search. It's not that complicated but I managed to avoid this so far by asking for a valid helpfile to attach to the application with a proper constants file. ;-)
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
__alexAuthor Commented:
> Yep. But don't you want to use a real, related helpfile instead?
Nope. Since the applications I develop are self-explanatory nobody will ever need any help. We plan to ship with the wrong help files. No, wait, I guess it's sufficient to make a screenshot of an arbitrary help file and just show the bitmap.
0
 
kretzschmarCommented:
usual i do agree with alex, a developer should not write the helpfile,
not because its just typing a lot, which can do everyone, no , just because
a developer do not think as a normal user. a develeoper is good by describing
his code to help other developers.

in a company i had worked, there was an extra person, which wrote the helpfiles. this person had nothing to do with development, was a normal office user. and this person did a great job, better than i had ever done. btw. we had there a tool for creating helpfiles, as i have it correct in mind it was robohelp named.

well, if i had a small app, then i used the hint-properties as help (on/off adjustable)

meikl ;-)
0
 
RatjeCommented:
http://www.helpscribble.com ( not Free)
I'm not familiar on how to use it  :) We got someone making our helpfiles, but this is the program we use.
0
 
Wim ten BrinkCommented:
Yep. Meikl understands me. :-)
Almost anyone can write a helpfile but it requires a specialist to develop software. Specialists are expensive so don't let them do things a cheaper person can do. And Meikl has another good argument. Developers are technicians, who would write a helpfile in techno-speach. You need someone who writes in just normal englist. (Or Dutch, German or whatever other language you need.)

I have seen many applications with a badly-written helpfile, often because a developer had to write it. Those kinds of helpfiles just make it even harder for users to understand what you're talking about. It is the same as with testing software. In the past we used to let developers test each others software. Thus many bugs would be found and most of them were just bugs that users probably wouldn't notice. Then the product was sent to the customers and the customers would generate an even bigger bug report full with things the developers never even considered to test. So for this too I told my boss that testing should be done by people who aren't developers. And it worked, the non-developers discovered a lot of bugs that the developers just missed. (Partly because they often didn't know what they were doing and thus tried to do everything.)

Explain the application to some non-developer and let him (or her) write the helpfiles for it. Then afterwards all you need to do is compile this documentation to a helpfile and add it to your application.
Or use more hints. A statusline that displays the hints would work too.
0
 
__alexAuthor Commented:
helpscribble.com offers free pascal sources to view *.chm files (the *.hlp substitute): http://download.jgsoft.com/helpscribble/UseHTMLHelp.zip
0
 
__alexAuthor Commented:
pascal sources -> Delphi sources
0
 
__alexAuthor Commented:
Thanks to all for the input!
0

Featured Post

Vote for the Most Valuable Expert

It’s time to recognize experts that go above and beyond with helpful solutions and engagement on site. Choose from the top experts in the Hall of Fame or on the right rail of your favorite topic page. Look for the blue “Nominate” button on their profile to vote.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now