Creating Windows Help Files

Copyright (C) 1997, Paul Piko

 

Introduction

All but the simplest software requires some type of documentation. In the Windows environment it is almost always provided in Windows Help format, either in addition to, or as a replacement for, printed documentation.

An online reference can be the salvation of the confused user, where the power of the software is harnessed to allow them to quickly find the solution to their problem. Or it can be a valuable aid to the investigative user who utilises the hypertext controls to navigate through the information you have provided, following ideas and trains of thought, and exploring the potential of your software.

Alternatively, if the documentation for your software is non-existent, cumbersome or frustrating your software will be viewed in a much less favourable light by the user.

Windows Help is the standard means for providing online documentation for Windows. If you are delivering Windows applications you should be delivering Windows Help files as well. This paper presents an overview of the components of the Windows Help system, and then shows how these building blocks are combined to produce an electronic reference.

Help Overview

Windows help files can be customised for any number of purposes. Some people use them as electronic books, tutorials, procedure manuals and reference guides. In each case the help file can be structured to best meet the needs of the target audience.

Depending on the user, the help file may be accessed in different ways. While running an application, if the user presses F1 or selects "Help" from the menu, you would expect the applicationís help file to appear on the screen. The help file stays open until the user closes it, or terminates the application.

If the help file is a form of book the user may more frequently start up WinHelp and load the help file manually.

In either case, at the very least, the user needs to have access to WINHELP.EXE (WinHelp 3 supplied with Windows 3.1) or WINHLP32.EXE (WinHelp 4 supplied with Windows 95/NT) and your HLP file. Depending how complex your help files becomes and how you choose to build it, there may be additional files required (such as DLLs or sound files).

A Windows Help file is really a collections of topics - paragraphs of related text separated into units. The content of each topic is totally up to you, the help author. Typically, in an applicationís help file, a topic will describe a single control, screen or action. Each topic can contain hyperlinks to other related topics.

To make your own help file you will need to have::

  • a help compiler
  • the topics as RTF files (RTF files are specially formatted ASCII files)
  • a help project file (instructions to the help compiler)
  • optionally, for WinHelp 4, a contents file

We will see how these ingredients come together later, but for now let us have a closer look at the basic components of a help file.

Help File Components

All Windows Help files have something in common -- the main help window. It is called the main window because it is possible to customise the help file to have additional windows open, called secondary windows. Not all help files have secondary windows, but they do all have a main window. The various standard parts of the main window are discussed below.

Title Bar

The main help window is a window -- it can be moved, resized, maximised and minimised. The default title for the window, in the title bar, is "Windows Help". You can assign your own custom title to the window by using one of the options discussed later under the section "The Project File"

Menu

WinHelp 3: The main window has a menu with four options on it: File, Edit, Bookmark and Help. The File menu allows another help file to be loaded, the current help topic to be printed, the printer to be set up, and to terminate help. The Edit menu lets the user copy text to the clipboard and write annotations to the current help topic. The Bookmark menu provides a means for the user to return to specific topics in the help file at a later time. The Help menu gives the user help on using help by calling up the help file WINHELP.HLP, and allows the option of the help window staying on top of any applications.

WinHelp 4: In addition to the buttons named above, there is an Options button between Bookmark and Help. It allows the user to configure the way help is displayed, such as window positioning, font size and color. There is also the ability to call up a history window listing previously displayed topics. The Help button, however, is reduced to only reporting version information - Help on Help is absent.

These standard menu options can be supplemented with your own menu options through the use of help macros, discussed later.

Button bar

Underneath the menu on the main window is the button bar. There are a number of buttons displayed, although depending on the situation not all may be enabled.

The Contents button when pressed will cause Windows help to place a specific help topic on the screen. The topic shown is determined by the help author and the way to control this is discussed in the section "The Project File".

If keywords have been set up in the help file the Search button will be available. Each topic in the file can have keywords associated with it. The search facility will display a list of topics related to the keyword the user specifies, and let them jump to that topic.

Once the user has viewed some help topics the Back button becomes available, letting them move back through the screens they have just viewed.

In WinHelp 3, rather than step backwards a topic at a time, the History button can be used. This button will pop up a History window, which has a list of each topic that has been viewed. The user can then select any of these topics and re-view it.

In WinHelp 4 this History facility was moved to the Options menu and was replaced by a Print button.

Help files can be set up to contain browse sequences. Browse sequences associate specific topics together so that the user can move in logical sequence through a set of related topics. Browse sequences are set up by the help author. The Browse buttons (<<,>>) move the user backward and forward through a browse sequence.

These standard buttons can be supplemented with your own buttons.

Topic area

A topic is the main unit in help files. A topic usually contains text, and possibly graphics. It may cover more than one screen, and can be scrolled using the scroll bars.

 

Figure 1. Example Help File

 

Help Topics Dialog

WinHelp 4 introduced a new feature call the Help Topics Dialog. When the Search button is pressed, this dialog is displayed, giving the user the opportunity to look for topics using the Index tab. This is equivalent to the Search option that was available in WinHelp 3. But WinHelp 4 doesnít stop there. A new Find option now enables the user to perform full text querying of the contents of the help file, making it much easier to locate topics of interest.

It is also possible for the help author to extend the Help Topics dialog by providing a .CNT file - a Contents file. The presence of this file causes the Help Topics dialog to produce another tab containing a graphical, expandable table of contents, as shown in figure 2 below.

Figure 2. Help Topics Dialog

Customisation Options

We have just covered the things that all help windows have in common. But before you can begin to work out what you want your help file to look like, we need to see what customisation options are available. Once we have examined the options, and discussed the planning issues, we will look at how to instruct the help compiler to create your help file.

Main Window

The standard features of the main window were discussed above. Here we look in more detail at the ways it can be customised.

The size, position and colour of the main window can be specified as part of the help fileís build process. Once the help file is opened by the user they will be able to resize and reposition it. The initial settings for these are specified in the help project file.

Title

Each topic can be assigned a title (as opposed to changing the title of the Help window itself, discussed previously). Titles are used for identifying topics when using bookmarks or the search facility.

Topic Area Regions

The topic area of the main window can be split into two parts: a non-scrolling region and a scrolling region. The non-scrolling region is typically used as a title for the topic. See Figure 1 for an example.

Character Set, Font and Colour

The help author can determine what character set and font will be used for the text of the topic. Windows Help can display text in any font and size available. If the font you use when creating the help file is not available on the target system, Windows will attempt to substitute a similar font. For this reason it is advisable to restrict yourself to the fonts shipped with Windows.

The colour that the text appears is configurable by the help author.

Figure 1 shows a help file with changes in font and attributes.

Jumps and Pop-Ups

Windows help is a hypertext system and it is possible to jump from one topic to another. Any piece of text or even a graphic can contain the necessary details to jump to another topic. Alternatively it is possible to have a window just pop-up above the current topic rather than actually change to it.

In the case of a jump or a pop-up, the user is made aware a jump is possible by a change in the mouse cursor to a pointing hand. Text jumps are indicated by an underline and are normally coloured green.

In Figure 1, the entries "Item 1", " Item 2" and "More Stuff in Another Window" are jumps.

The word "Contents" in the first sentence, "This is the Contents page" is a pop-up hot spot.

Graphics

Graphics can be placed in the help file to help communicate your message to the reader. You can place the graphic anywhere on the page, including next to text, which can be made to wrap around. The graphic may itself be a hot spot that will produce a jump or a pop-up, or contain many hot spots.

Figure 1 shows a bitmap placed in two places in the help file.

Search Capabilities

As mentioned earlier, Windows Help has a search facility. If you provide keywords for your topics when building the help file, Windows Help will look after finding the topics when the user requests a search.

Browse Sequences

For the Browse buttons to work, topics need to have browse sequences allocated to them. For each topic you need to consider its relationship to the other topics in your system. You must then decide whether the topic is question should fall within a browse sequence, and its position in that sequence. Not that it is possible to have more than once browse sequence in the system, but it can easily become confusing to the user.

Secondary Windows

You can set up your help file so that more than one window is in use. A secondary window is an independent help window that supports the main window. These windows can typically be used for displaying a table of contents or an index, pictures or examples.

Figure 3. A Secondary Window

Run programs, execute DLLs, Help Macros

Macros, DLL functions and programs can be executed when the user invokes help, arrives at a topic or activates a hot spot. Macros control customisation of the help system, window control, menu items and buttons, hypertext links and text markers.

Macros

Windows Help provides a number of macros that allow you to customise the way the help file responds to the user. Macros can be used to:

  • customise the menu
  • customise the button bar
  • control location of the main and secondary help windows
  • control jumps to topics within the help file or in other help files
  • place text markers
  • assign an accelerator key to a macro
  • let the help system know about a function within a DLL, and then be able to use it

The macros are discussed in detail in the Creating Help help file, and the Help Workshop help file.

Executing programs

A program can be run from within your help file by using the ExecProgram help macro. This means you are able to run a program from wherever you are able to specify a macro -- when the help file is opened, when a specific topic is displayed, when the user presses a button, and more.

Note: when specifying strings to Windows Help you need to use quotation marks. You can use either a pair of double quotation marks or the left and right single quotation marks.

ExecProgram(`command "string parameter"í,0)

Calling DLLs

Before you can use a function in a DLL you need to inform Windows help about it. To do this you need to call the RegisterRoutine macro. To be available from anywhere in the help file, RegisterRoutine should be placed in the CONFIG section of the project file. The following example registers the routine sndPlaySound from the MMSYSTEM.DLL, which will allow you to play WAV files from within your help file.

[CONFIG]

RegisterRoutine("MMSYSTEM.DLL","sndPlaySound","Si")

Planning the Help File

The complexity of help file authoring will parallel the complexity of the process you are attempting to document. A well planned and built help file will actually aid in hiding the complexity from the user. You need to take a considered approach to the development of the help file. It should not be just a last minute job as the application is shipped out the door, or something that is supplied just to say that you have provided a help file. It should be thought of as something that actually adds value to your software and compliments it. You should set aside time to spend on the design and authoring process.

A major consideration to take into account when you start to plan your help file is your audience. Who is going to use the help? A computer illiterate, an application novice, a guru? How will the help file be called upon to reveal its treasures?

Having identified your audience you then need to determine the topics that will sufficiently provide the answers that the user will need. You may have to organise your help file in such a way that many types of user will be able to quickly access the type of information they require.

For each topic you need to decide:

  • what text explains the topic?
  • will a graphic convey the idea?
  • what words/phrases should link to other topics?
  • does the topic need any pop-up text/graphics?
  • does this topic fall within a browse sequence (following associated ideas)?
  • what keywords will a user search on to find this topic?
  • what unique identifier (context string) will be allocated to this topic?

Depending on your design or goals, the following are also worth thinking about:

  • the effect of colours/fonts/white space/bullets/tables
  • customising the menu, adding buttons or executing macros/DLLs/programs
  • making use of secondary windows
  • the length of text, and the language used
  • consistency within the help file, and with other help files

Creating Help

In order to bring your help design to fruition you need to make use of a number of components, as listed here.

The tools - Help compiler and utilities

WinHelp 3

To create a Windows Help file you will need to use the Windows Help compiler. There are variations of this compiler, commonly named as follows:

  • HC30.EXE: Creates help files for Windows 3.0, 3.1
  • HC31.EXE, HC.EXE: Creates help files for Windows 3.1
  • HCP.EXE: Protected mode version for large help files.

Note: the help compiler is a DOS program.

WinHelp 4

HCW.EXE and HCRTF.EXE make up the help compiler suite for WinHelp 4.

Graphics

Graphic files with multiple hot spots are creatable using the SHED (Segmented HyperGraphics Editor) program. SHED is a Windows program that can be used to mark regions of a graphic and nominate the type of hot spot (jump/pop-up) each region is.

When a help file is used on systems with different displays, the graphics may not appear exactly the same. MRBC, the Multiple Resolution Bitmap Compiler, is a DOS program that will take a number of images (CGA, EGA, VGA, 8514) and combine them into the one file. You can then treat the file just like any other graphic while creating your help and at runtime Windows Help will determine which resolution to display.

The help compiler and utilities are often distributed with language products.

Files you need to supply

Project file

The Help compiler takes its instruction from a project file. This file contains all the information needed for the compiler to combine all the source elements together to make your help file. It tells:

  • where to find the source files
  • which topic will be the table of contents
  • what customisation is to be performed at startup (windows, menus, buttons)
  • identification of any DLLs to be used
  • options to be carried out as part of the build

The project file is discussed in more detail in a later section.

Topic files

The source files for the help compiler are topic files. Topic files are RTF (Rich Text Format) files containing one or more topics. The RTF file format is a plain text file containing embedded formatting and control statements. The files must be RTF to be correctly interpreted by the help compiler.

You can choose to use a plain text editor to create the topic files and insert the formatting statements directly into the file. While this is possible, it can become difficult to manage when you have many formatting changes.

Using an editor that can handle RTF files directly make the editing task much easier. A lot of the RTF statements used by the help compiler appear as footnotes and text formatting which helps clear up the work area. If you use Word, the font attributes and insertion of graphics are all carried out in a WYSIWYG environment.

A very simple RTF version of a help file is included at the end of this document.

Supporting files

Your graphics files, any DLLs, programs or data files you use call on in your help file need to be available.

Help authoring tools

There are a number of products collectively called Help Authoring Tools that will hide a lot of the complexity of the help source files. With some of them you may never actually see the help compiler itself run, and all your information will be organised within a friendly IDE. Other just provide shortcut codes for the RTF format statements and process a simplified ASCII file prior to you manually compiling it. Yet others provide macros for use with Word to simplify the development process.

As the following sections will indicate, manually coding the RTF files in an ASCII editor would soon prove laborious and error prone. Working in a word processor supporting RTF such as Word makes the process more manageable. Adding on one of the tools providing a word processor template helps reduce the repetitive tasks. The best solution is to use one of the products that incorporate all the help features and keep track of things like topics, keywords, graphics.

There are a number of shareware help authoring tools and demonstration versions of commercial products available, many available on bulletin boards and Compuserve, some of which are listed at the end of this paper.

Showing help from a CA-Visual Objects application

To incorporate a help file into a CA-Visual Objects application you need to assign the HelpDisplay property, typically on the ShellWindow. You can do this as follows:

oShellWindow:HelpDisplay := HelpDisplay{"MYAPP.HLP"}

Then to programmatically call up the Help file you need to make a call like this:

self:HelpDisplay:Show("topic1")

However you donít normally to explicitly call up a help topic because CA-Visual Objects will automatically generate a HelpRequest event when the F1 key is pressed, and by default call the Show method of HelpDisplay. The parameter to the show will be the hyperlabel help context variable, if you have one. The CA-Visual Objects editors provide numerous places for you to fill in the relevant help context - on controls, windows, menus. The value you put in to the help context is totally up to you - be aware that it is the value that will be used to look up the topics in the help file, so you are going to have to make sure that your help file has entries to match you help contexts.

If there is no hyperlabel for an item, the keyword for a control is generated is as Control_xxxx, where xxxx is the numeric ID of the control, in decimal. For example, an OK push button might generate the keyword Control_101.

Making A Simple Help File

The Topic File

So how do you set up a help file for CA-Visual Objects? Let's take a small sample and see how it's done. Help files are created from RTF files. Normally you would create these from a word processor, or help authoring tool. To keep things simple, here is a little RTF file straight into an ASCII editor:

 

{\rtf1\ansi

 

#{\footnote topic1}

${\footnote My 1st Topic}

K{\footnote Sample1}

This is my first topic.

\par

\page

 

#{\footnote topic2}

${\footnote My 2nd Topic}

K{\footnote Sample2}

This is my second topic.

\par

\page

 

}

The important things to see here are:

  1. #{\footnote defines a context string, used to uniquely identify a topic.
  2. ${\footnote defines the topic title
  3. \footnote defines a keyword in the "K" keyword list

The text following the footnotes is the text that appears in the topic.

For help files with CA-Visual Objects it is the "K" keywords that are important. When you tell CA-Visual Objects to display help using

 

self:HelpDisplay:Show("topic1")

this equates to telling the Help engine to look up "topic1" in the "K" keyword list.

If you want to compile the above sample RTF you can use the help compiler (HC31.EXE or HCW.EXE). You will also need a help project file which tells the help compiler what to do.

The help project file TEST.HPJ is:

 

[options]

title=My Help File

 

[files]

test.rtf

And you compile by typing HC31 TEST, or by loading the project into the Help Workshop.

Other CA-Visual Objects Considerations

More on keywords

Help files can have more than one keyword list. The K keyword list is the one that is used when you click on the Search button. CA-Visual Objects also uses it. Other languages use a context identifier to jump to the right topic.

The only issue with the way CA-Visual Objects does it is that the words your program uses to look up the help file are the ones the user also uses. But you can get around this as well, if you need to. To do it you would have to use one of the alternate key lists, which are invisible to the user. For example a C keyword list (made by using a C footnote, and including the line MULTIKEY=C in the project file) could be looked up by prefixing your help key with [C],

e.g.

 

self:helpdisplay:show("[C]topic")

 

No keyword?

Maybe you just missed setting up one of your keywords in the help file, or possibly you didnít account for CA-Visual Objectsí automatic keyword (CONTROL_xxxx) on controls without a hyperlabel - if the keyword used to invoke help does not exist in the help file, under Win95 you get the Find dialog box and under Win311 you just get a message "Help Topic doesn't exist".

You can circumvent CA-Visual Objectsí automatic behaviour by substituting a call to the help contents when the help context is absent, as shown below:

 

method HelpRequest(oHR) class MyDataWindow

 

    local cKeyWord as string

    local oHRHL as hyperlabel

    local oDWHL as hyperlabel

    local oDWHD as helpdisplay

 

    oHL := oHR:hyperlabel

    oDWHL := self:hyperlabel

    oDWHD := self:helpdisplay

 

    if oHR:HelpType == HELPCONTROL .and. ;

         (isNil(oHR:hyperlabel) .or. ;

         empty(oHL:helpContext))

 

         // No help context on the

         // control, take it from

         // the Window

         cKeyWord := oDWHL:helpContext

 

         // If help context is blank,

         // show the contents

         if empty(cKeyWord)

             cKeyWord := "Contents"

         endif

 

         oDWHD:show(cKeyWord)

 

    else

         super:helpDisplay(oHR)

    endif

 

Topic Files in more detail

The techniques for defining the following attributes are listed below:

Default character set and fonts

Using an ASCII editor

The entire contents of a topic file must be encased in braces. The first control statement must be \rtf1, defining the file as an RTF file. The next statement should be \ansi or \pc or similar to define the character set. This would look like the following:

 

{\rtf1\ansi

.

.

}

You can then declare a font table to contain the fonts you are going to use within the file. Following the \fonttbl statement is a list of a user defined font number, the font family and the font name:

 

{\fonttbl

\f0\fswiss Arial;

\f1\fdecor Courier New;}

The default fault can then be nominated by using \def:

 

\deff0

The font size is specified using \fs. The left indent is controlled by \li. There are more general formatting codes, documented in the Creating Help help file referenced at the end of this document.

Using Word

Control of fonts and characters are an integral part of Word. Just use the normal techniques to change the font and characters. Remember to save the file as RTF.

 

Title

Using an ASCII editor

The title of your choice should be substituted for the phrase "My Title" in the line below.

 

${\footnote My Title}

Using Word

Make a footnote using the character $ as the footnote character. The text of the footnote is the title.

 

Context String

The context string uniquely identifies the topic, and is commonly used to programmatically access the help topic from an application.

Using an ASCII editor

The context string of your choice should be substituted for the phrase "My Context" in the line below.

 

#{\footnote My Context}

Using Word

Make a footnote using the character # as the footnote character. The text of the footnote is the context string.

 

Arrival Macro

A macro can execute on the userís arrival at the topic.

Using an ASCII editor

The title of your choice should be substituted for the phrase "My Macro" in the line below.

 

!{\footnote My Macro}

Using Word

Make a footnote using the character ! as the footnote character. The text of the footnote is the macro.

 

Browse Sequence

Using an ASCII editor

The name of the browse sequence and a colon followed by the sequence number should be substituted for the phrase "Seqname:0001" in the line below.

 

+{\footnote Seqname:0001}

Using Word

Make a footnote using the character + as the footnote character. The text of the footnote is the browse sequence.

 

Keywords

Defines a keyword the user uses to search for a topic.

Using an ASCII editor

The keyword of your choice should be substituted for the phrase "My Word" in the line below.

 

K{\footnote My Word}

Using Word

Make a footnote using the letter K as the footnote character. The text of the footnote is the keyword.

Note: You can have more than one keyword table in a help file by using a letter other than K as the footnote character, and setting a project option. For example, you can use the letter C as the footnote character, but you also have to set the project file option MULTIKEY=C.

 

Ending a topic

Each topic ends at a page break.

Using an ASCII editor

 

Use \page

Using Word

Set a page break to end the topic.

Links and Hot spots

Jumps

Using an ASCII editor

Use \uldb and \v. The following text My Spot would appear as underlined green text, and jump to the topic with a context string My Topic.

 

{\uldb My Spot}{\v My Topic}

Using Word

Type the text you want to be the jump as double underlined. Follow that text immediately with the context string of the topic as Hidden text.

 

Pop-ups

Using an ASCII editor

Use \ul and \v. The following text My Spot would appear as broken underlined green text, and pop up the topic with a context string My Topic.

 

{\ul My Spot}{\v My Topic}

Using Word

Type the text you want to be the jump as underlined. Follow that text immediately with the context string of the topic as Hidden text.

Graphics

You can insert a graphic into a file in one of two ways. The graphic can be treated as if it is was a character and be place mid-text, or it can be aligned with the left/right margin so that text will wrap around it.

Bitmaps as characters

Using an ASCII editor

Use \{bmc, followed by the name of the graphic, then \}.

This is an example of a bitmap as a character \{bmc MYBITMAP.BMP\}, inserted within text.

Using Word

Type the text you want to be the jump as underlined. Follow that text immediately with the context string of the topic as Hidden text.

 

Wrapping text around bitmaps

Using an ASCII editor

Use \{bml or \{bmr to align the graphic with the left or right margin.

 

\{bml MYBITMAP.BMP\}

Using Word

Use the normal techniques within word to insert and arrange graphics within your file.

 

The Project File

The Help project file contains instructions for the help compiler and controls the creation of your Windows help file. It is a plain ASCII file, and is divided into sections marked by the following section headings:

 

Section

Required?

Purpose

[FILES]

Yes

This specifies the topic files to be used, which are listed on the lines following the heading.

[CONFIG]

No

Configure the overall help file format and initialise

[OPTIONS]

No

Controls error reporting, directories for files, topic to be contents, help window title, etc

[BUILDTAGS]

No

Build tags allow conditional inclusion of topics in the help file. Used if the same topics files are used to generate different version of the help file.

[ALIAS]

No

This will force the help system to interpret a given context string as a different one.

[BAGGAGE]

No

Specify files (e.g. multimedia) to be stored within the help file

[WINDOWS]

No

Specify position, size and colour of main and secondary windows.

[MAP]

No

Allows context numbers to be associated with context strings. Sometimes programmatic access to the help system needs to be executed with numeric parameters rather than strings.

[BITMAPS]

No

Specifies bitmap files to be included in the build.

To set the title for a help window you need to use the TITLE option. To determine the Contents topic, which is the first topic shown when the help file is opened (if no specific topic was requested), you need to use the INDEX option and nominate the context string of the desired topic.

 

[OPTIONS]

title="My Help File"

contents=MyContents

Project files usually have an extension of HPJ. To build a help file you just pass the project file name to the help compiler:

HC MYHELP

or load it into Help Workshop.

Example

The RTF Help File

{\rtf1\ansi\deff11

{\fonttbl

\f0\fswiss System;

\f1\fmodern Fixedsys;

\f2\fmodern Terminal;

\f3\fmodern Modern;

\f4\fscript Script;

\f5\froman Roman;

\f6\froman MS Serif;

\f7\fmodern Courier;

\f8\fswiss MS Sans Serif;

\f9\fswiss Small Fonts;

\f10\fmodern MS LineDraw;

\f11\fswiss Arial;

\f12\fmodern Courier New;

\f13\froman Times New Roman;

\f14\fnil Wingdings;

\f15\froman Symbol;

}

${\footnote Contents}

#{\footnote Contents}

+{\footnote 00001}

K{\footnote Contents}

K{\footnote Index}

\keepn \f8 \fs24 \qc \fs28 \b \cf0 Contents\par \fs24 \b0 \ql \pard \f8 \fs24 \pard \tx1800 \fs20 \cf0 This is the \ul Contents\ul0 \v Clarification\v0 page.\par \pard \par \uldb Item 1\uldb0 \v Item_1\v0 \par \par \uldb Item 2\uldb0 \v Item_2\v0 \par \par \uldb More Stuff In Another Window\uldb0 \v More_Stuff>Window2\v0 \par \par The picture is within the text here, \{bmc SMILE.BMP\} but further down the page it wraps.\par \par \pard \tx4185 \{bml SMILE.BMP\} Here the text will wrap around the picture, so we need enough text to be able to show it.\par \pard \fs24 \par \page

${\footnote Clarification}

#{\footnote Clarification}

+{\footnote 00002}

K{\footnote Clear up}

K{\footnote Explain}

K{\footnote Clarify}

\keepn \f8 \fs24 \fs20 \cf0 This should clear up any confusion.\par \fs24 \pard \page

${\footnote Item 1}

#{\footnote Item_1}

K{\footnote First}

\keepn \f8 \fs24 \qc \fs28 \b \cf0 Item 1\par \fs24 \b0 \ql \pard \f8 \fs24 \pard \fs20 \cf0 This is the text for the first item.\par \fs24 \page

${\footnote Item 2}

#{\footnote Item_2}

+{\footnote 00003}

K{\footnote Second}

\keepn \f8 \fs24 \qc \fs28 \b \cf0 Item 2\par \fs24 \b0 \ql \pard \f8 \fs24 \pard \fs20 \cf0 The second item\par \fs24 \page

${\footnote More Stuff}

#{\footnote More_Stuff}

+{\footnote 00004}

K{\footnote More}

K{\footnote Stuff}

\keepn \f8 \fs24 \qc \fs28 \b \cf0 More Stuff\par \fs24 \b0 \ql \pard \f8 \fs24 \pard \fs20 \cf0 This is a bit more information for you.\par \fs24 \page

}

 

Viewing the RTF File in Word

This diagram shows how a help file appears in Microsoft Word 6.

 

Project file

[OPTIONS]

title = Example Help File

contents = contents

warning = 3

report = ON

multikey=C

 

[FILES]

example.rtf

 

[WINDOWS]

main = , (0,0,590,550),,,

Window2 = "Example Secondary", (590,0,433,200),,,

 

[CONFIG]

BrowseButtons()

Viewing the Help Window

 

 

Help Authoring Tools

Product

Available from:

Doc-To-Help

WexTech Systems

310 Madison Avenue, Suite 905

New York, NY 10017 USA

ForeHelp

ForeFront

5171 Eldorado Springs Drive

Boulder, CO 80303 USA

HDK

Virtual Media Technology

PO Box 633, Neutral Bay, NSW

Help Edit

James Herron

29 Duncryne Place

Bishopbriggs

Glasgow G64 2DP

Scotland

Help Writerís Assistant

Olson Software

4 Anaru Place

Palmerston North

New Zealand

Helllp!

Guy Software

1752 Duchess Avenue

West Vancouver

British Columbia, Canada, V7V 1P9

HelpBreeze

SolutionSoft

999 Evelyn Terrace West, Suite 86

Sunnyvale, CA 94086 USA

HyperDoc

Kenneth Liew

220, Jalan Raja Kam, Canning Garden,

31400 Ipoh, Perak, Malaysia

Tel: (607) 573-304

MasterHelp

Performance Software

804-794-1012

MultiDoc

Dabiwa Ltd

301 Joseph Drive

West Chester, PA 19380 USA

RoboHelp

Blue Sky Software

800-677-4WIN

RTFGen

Dave Baldwin

22 Fox Den Rd

Hollis, NH, 03049 USA

Visual Help

WinWare

PO Box 2923

Mission Viejo CA 92690 USA

Windows Help Authoring Tool

Microsoft (unsupported product)

MS BBS, Compuserve, Developer Network CD

Conclusion

In this paper we have looked at how Windows help filea are organized and structured. We have seen numerous ways to customise help files - change its appearance, include graphics and vary the layout. We saw some of the differences between WinHelp 3 and the newer WinHelp 4 available with Windows 95 and NT. And importantly for CA-Visual Objects application developers, we covered the process necessary to integrate Windows Help with an application.

Further Information

Creating Help help file available with CA-Visual Objects 1

Help Workshop help file available with CA-Visual Objects 2

Windows SDK forum on Compuserve: WinHelp section