Microsoft Compressed HTML Help
Encyclopedia
Microsoft Compiled HTML Help is a Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 proprietary online help
Online help
Online help is topic-oriented, procedural or reference information delivered through computer software. It is a form of user assistance. Most online help is designed to give assistance in the use of a software application or operating system, but can also be used to present information on a broad...

 format. It was introduced as the successor to Microsoft WinHelp with the release of Windows 98
Windows 98
Windows 98 is a graphical operating system by Microsoft. It is the second major release in the Windows 9x line of operating systems. It was released to manufacturing on 15 May 1998 and to retail on 25 June 1998. Windows 98 is the successor to Windows 95. Like its predecessor, it is a hybrid...

, and is still supported in Windows 7.

History

In 2002, Microsoft announced security risks associated with the .CHM format, as well as security bulletins and patches. They have since announced their intentions not to develop the .CHM format further.
Month Year Description
February 1996 Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 announces plans to stop development of WinHelp and start development on HTML Help.
August 1997 HTML Help 1.0 (HH 1.0) is released with Internet Explorer 4
Internet Explorer 4
Microsoft Internet Explorer 4 is a graphical web browser released in September 1997 by Microsoft, primarily for Microsoft Windows, but also with versions available for Apple Mac OS, Solaris, and HP-UX and marketed as "The Web the Way You Want It".It was one of the main participants of the first...

.
February 1998 HTML Help 1.1a ships with Windows 98
Windows 98
Windows 98 is a graphical operating system by Microsoft. It is the second major release in the Windows 9x line of operating systems. It was released to manufacturing on 15 May 1998 and to retail on 25 June 1998. Windows 98 is the successor to Windows 95. Like its predecessor, it is a hybrid...

.
January 2000 HTML Help 1.3 ships with Windows 2000
Windows 2000
Windows 2000 is a line of operating systems produced by Microsoft for use on personal computers, business desktops, laptops, and servers. Windows 2000 was released to manufacturing on 15 December 1999 and launched to retail on 17 February 2000. It is the successor to Windows NT 4.0, and is the...

.
July HTML Help 1.32 releases with Internet Explorer 5.5
Internet Explorer 5
Microsoft Internet Explorer 5 was a graphical web browser released in March 1999 by Microsoft, primarily for Microsoft Windows, but initially with versions available for Apple Macintosh, Sun Solaris, and HP-UX. It was one of the main participants of the first browser war...

 and Windows Me
Windows Me
Windows Millennium Edition, or Windows Me , is a graphical operating system released on September 14, 2000 by Microsoft, and was the last operating system released in the Windows 9x series. Support for Windows Me ended on July 11, 2006....

.
October 2001 HTML Help 1.33 releases with Internet Explorer 6
Internet Explorer 6
Internet Explorer 6 is the sixth major revision of Internet Explorer, a web browser developed by Microsoft for Windows operating systems...

 and Windows XP
Windows XP
Windows XP is an operating system produced by Microsoft for use on personal computers, including home and business desktops, laptops and media centers. First released to computer manufacturers on August 24, 2001, it is the second most popular version of Windows, based on installed user base...

.
March At the WritersUA (formerly WinWriters) conference, Microsoft announces plans for a new help platform, Help 2, which is also HTML based.
January 2003 Microsoft decides not to release Microsoft Help 2
Microsoft Help 2
Microsoft Help 2.x is a proprietary format for online help files, developed by Microsoft and first released in 2001 as a help system for Visual Studio .NET and MSDN Library....

 as a general Help platform.

File format

Help is delivered as a binary file with the .chm. It contains a set of HTML files, a hyperlink
Hyperlink
In computing, a hyperlink is a reference to data that the reader can directly follow, or that is followed automatically. A hyperlink points to a whole document or to a specific element within a document. Hypertext is text with hyperlinks...

ed table of contents, and an index file.

The file starts with bytes "ITSF" (in ASCII
ASCII
The American Standard Code for Information Interchange is a character-encoding scheme based on the ordering of the English alphabet. ASCII codes represent text in computers, communications equipment, and other devices that use text...

), for "Info-Tech Storage Format". The format has been reverse-engineered by Matthew Russotto with assistance from Peter Ferrie and Paul Wise. Russotto's documentation is freely available at http://www.russotto.net/chm/chmformat.html.

On Windows computers a .chm can be built with the freely-distributed HTML Help Workshop.

The published help features:
  • Data compression (with LZX compression
    LZX (algorithm)
    LZX is the name of an LZ77 family compression algorithm. It is also the name of a file archiver with the same name. Both were invented by Jonathan Forbes and Tomi Poutanen.-Amiga LZX:...

    )
  • Built in search engine
  • Ability to merge a number of .chm help system
  • Extended character support although it does not fully support Unicode
    Unicode
    Unicode is a computing industry standard for the consistent encoding, representation and handling of text expressed in most of the world's writing systems...

    .


The .chm file format's ability to contain and execute arbitrary code is a potential security threat, and viewing .chm files is sometimes restricted in the Windows OS.

Applications

The Microsoft Reader
Microsoft Reader
Microsoft Reader is a Microsoft program for the reading of e-books, originally released in August 2000.Microsoft Reader is available for download from Microsoft as a free program for computers running Windows. It can also be used on a Pocket PC, where it has been built into the ROM since Windows CE...

 .LIT file format is a modification of the HTML Help CHM format. CHM files are sometimes used for e-books.

Beyond CHM, a multi-tab CHM reader and CHM editor, which enables user to add annotations on CHM eBooks.

Various applications, such as HTML Help Workshop or 7-Zip
7-Zip
7-Zip is an open source file archiver. 7-Zip operates with the 7z archive format, but can read and write several other archive formats. The program can be used from a command line interface, graphical user interface, or with Microsoft Windows shell integration. 7-Zip began in 1999 and is actively...

, have features to decompile CHM files. On Windows systems, the hh.exe utility, as well as the extract_chmLib utility (a component of chmlib) on Linux systems, can be used to decompile CHM files as well.

Use on non-Windows platforms

  • GTK: , CHMsee, chmviewkit
  • Qt: Okular
    Okular
    Okular is the document viewer for KDE SC 4 . It is based on KPDF and it replaced KPDF, KGhostView, KFax, KFaxview and KDVI in KDE 4.Its functionality can be easily embedded in other applications....

    , kchmviewer,
  • Java:
  • iOS: eBookMobi, ReadCHM, CHMate
  • Mac OS X: CHMox, ArCHMock
  • Other / multiple: xCHM
    XCHM
    xCHM is an open source GUI front-end for CHMLIB . It compiles and runs on Linux, BSD, Mac OS X and Microsoft Windows...

    , , DisplayCHM, ChmFox Firefox addon CHM Reader Firefox addon, Free Pascal
    Free Pascal
    Free Pascal Compiler is a free Pascal and Object Pascal compiler.In addition to its own Object Pascal dialect, Free Pascal supports, to varying degrees, the dialects of several other compilers, including those of Turbo Pascal, Delphi, and some historical Macintosh compilers...

    , FBReader
    FBReader
    FBReader is a free and open source e-book reader for GNU/Linux, Microsoft Windows, and other platforms.It was originally written for the Sharp Zaurus and currently runs on many other mobile devices, like the Nokia Internet Tablets, as well as desktop computers...

    , iChm

See also

  • Windows Help
  • Microsoft Help 2
    Microsoft Help 2
    Microsoft Help 2.x is a proprietary format for online help files, developed by Microsoft and first released in 2001 as a help system for Visual Studio .NET and MSDN Library....

  • KDE WAR (file format)
  • Comparison of documentation generators

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK