Windows 95 Help File Format Explained
In Windows 95, system help documentation was stored using the
Microsoft WinHelp format, identified primarily by the .hlp
file extension. This article examines the structure of the WinHelp
system in Windows 95, the auxiliary files used to organize contents and
indexes, how authors compiled these help topics, and the eventual
deprecation of the format in modern operating systems.
The standard file format for Windows 95 help documentation was the
32-bit version of Microsoft WinHelp (WinHelp 4.0), which packaged text,
formatting, and navigation into binary .hlp files. When a
user pressed F1 or selected "Help" from the Start menu, Windows launched
the winhlp32.exe viewer to parse and display these files.
The format supported rich text formatting, clickable hyperlinks,
embedded bitmaps, context-sensitive topic IDs, and internal macro
scripting that allowed help files to trigger operating system
actions.
To modernize navigation, Windows 95 introduced the Contents
(.cnt) file to accompany the main .hlp file.
The .cnt file was a plain-text outline that defined the
hierarchy of books and topics shown in the Help Topics viewer. This gave
users a consistent, multi-tabbed interface featuring "Contents,"
"Index," and "Find." When a user first accessed the "Find" tab to
perform a full-text search, the system created a .gid
(Global Index) file in the same directory to cache the index for faster
subsequent queries.
Creating a Windows 95 help file required authoring content in Rich
Text Format (RTF). Writers used specialized footnotes within the RTF
document to define topic titles, keywords, context strings, and browse
sequences. Microsoft's Help Compiler (hcrtf.exe) then
processed the RTF source files along with a Help Project
(.hpj) configuration file to compile the final binary
.hlp file.
While the WinHelp format was a standard across Windows 95 and Windows
NT 4.0, its proprietary nature and potential security vulnerabilities
caused Microsoft to phase it out. Starting with Windows 98, Microsoft
transitioned to Compiled HTML Help (.chm), which used
standard HTML and web technologies. Microsoft eventually stopped
including the native WinHelp viewer in Windows Vista, requiring users to
download a standalone viewer to open legacy .hlp files.