Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.

Symbian Context-sensitive Help Basics

From Wiki
Jump to: navigation, search

This article provides a general overview about how to create context-sensitive (CS) help files for Symbian.

Article Metadata
Created: giridharn (06 Jun 2007)
Last edited: hamishwillee (01 Feb 2012)



Symbian has its own context-sensitive help system, which is available on all Symbian devices. The help system allows you to read the whole file in sequence, or to launch Help with the article that is most appropriate to the current application context.

App developers write the help files using an .rtf file template(in Microsoft Word), and compile it to the help file format using the "CS Help compiler":

  • Help files consist of a number of topics. Each topics have content (title, body, etc.) and an identifier. The topic identifier can be used by applications to invoke the right help page.
  • The "CS Help compiler" is part of the S60 SDK and can be invoked using
    Epoc32\tools\cshlpcmp.bat <params>
  • CS Help compiler creates help files based on information contained in a project file (*.cshlp). The project file holds references to all input data required to generate the compiled help file (*.hlp)

Input files

The help project file references to the following resources:

  • CS Help rich-text source file (rtf). It contains all text to be compiled to the help file. Paragraph styles are recognised by the CS Help compiler.
  • Images can be also compiled into CS Help by CS Help compiler. The location of the images must be specified in the project file and referenced in the rtf file
  • It is also possible to specify a Customisation file in Help project file. It enables customizing the look and feel of the compiled Help document

Output files

The Help compiler generates the following files.

  • Compiled CS Help
    Help files must be copied to \resource\help directory on the phone and have the extension "hlp".
  • Context header
    This file contains a list of string constants that enables applications to invoke certain topics.

Known Issues

  • KIS001302 - Compiling context-sensitive help fails with latest version of Perl
  • Microsoft Word 2007 does not work with the RTF templates. It won't work. There are postings about deleting tags that Microsoft adds to the RFT file, but these postings are related to MS Word 2003. Newer versions of word seem to produce a file that is incompatible with rtf2hml and the carbide.c++ console does not reflect the build failure.
  • Developers must select protected UIDs (0x00000000 -> 0x7FFFFFFF) for CS help file, because S60 3rd editon and later return an error when loading CS help files with UIDs in the un-protected range (0x80000000 -> 0xFFFFFFFF). Note that the UID of the CS help file can be different from the appliction's UID.

More info, links

  • Help file usage
  • CS Help Reference - information about help related file formats
  • CS-Help Guide - a very detailed step-by-step guide to create context-sensitive help
  • S60 SDK contains a minimal sample application under S60Ex\HelpExample
  • Qt Help is not enabled for Symbian: QTBUG-6775
This page was last modified on 1 February 2012, at 04:44.
61 page views in the last 30 days.