Microsoft Compressed HTML Help
Encyclopedia
Microsoft Compiled HTML Help is a Microsoft
proprietary online help
format. It was introduced as the successor to Microsoft WinHelp with the release of Windows 98
, and is still supported in Windows 7.
ed table of contents, and an index file.
The file starts with bytes "ITSF" (in ASCII
), 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:
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.
.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
, 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.
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 hyperlinkHyperlink
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 compressionLZX (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 UnicodeUnicodeUnicode 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 ReaderMicrosoft 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: OkularOkularOkular 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: xCHMXCHMxCHM 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 PascalFree PascalFree 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...
, FBReaderFBReaderFBReader 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 2Microsoft Help 2Microsoft 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
- HTML Help Web Page on MSDN
- Microsoft Help 2 Reference (part of Visual Studio SDK for VS7.1 and VS8.0)
- History of HTML Help
- Unofficial (Preliminary) HTML Help Specification