Microsoft Compiled HTML Help
Filename extension |
.chm |
---|---|
Internet media type |
application/vnd.ms-htmlhelp[1] |
Developed by | Microsoft |
Initial release | 1997 |
Latest release | 1.4[2] |
Extended to | .lit |
Other names | hh.exe |
---|---|
Help system |
Microsoft Compiled HTML Help (CHM) is a
Although the format was designed by Microsoft, it has been successfully reverse-engineered and is now supported by many document viewers.
History
CHM was introduced as the successor to
Month | Year | Description |
---|---|---|
February | 1996 | Microsoft 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. |
February | 1998 | HTML Help 1.1a ships with Windows 98. |
January | 2000 | HTML Help 1.3 ships with Windows 2000. |
July | HTML Help 1.32 releases with Internet Explorer 5.5 and Windows Me. | |
October | 2001 | HTML Help 1.33 releases with Internet Explorer 6 and Windows XP. |
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 as a general Help platform. |
Microsoft has announced that they do not intend to add any new features to HTML Help.[6]
File format
Help is delivered as a binary file with the .chm
extension. It contains a set of HTML files, a hyperlinked table of contents, and an index file. The file format has been reverse-engineered and documentation of it is freely available.[7][8]
The file starts with bytes "ITSF" (in ASCII), for "Info-Tech Storage Format", which is the internal name given by Microsoft to the generic storage file format used for CHM files.[9]
CHM files support the following features:
- Data compression (using LZX)
- Built-in search engine
- Ability to merge multiple .chm help files
- Extended character support, although it does not fully support Unicode.[10]
The Microsoft Reader's .lit file format is a modification of the HTML Help CHM format. CHM files are sometimes used for e-books.[11]
Viewers
In addition to Microsoft Windows, the following apps support CHM:
Name | Operating system | Website | |
---|---|---|---|
Okular | Windows, Linux, Unix-like | okular |
Uses hh.exe on Windows
|
Calibre | Windows, macOs, Linux, | calibre-ebook |
|
Sumatra PDF | Windows | www sumatrapdf on GitHub |
|
GnoCHM | Linux, BSD | GnoCHM on SourceForge | |
CHM View | None/Uncompiled | chmviewkit on GitHub | |
kchmviewer | Windows, Linux | ulduzsoft |
|
KCHM | Linux, BSD, Solaris | KCHM on SourceForge | |
CHMPane | Windows, macOS, Linux | CHMPane on SourceForge | |
CHMate Neue | iOS, iPadOS, visionOS | CHMate Neue on iTunes | |
iChm | iOS, macOS | iChm on iTunes | Discontinued |
ChmPlus | iOS, iPadOS, macOS, visionOS | ChmPlus on iTunes | |
Chmox | macOS | chmox Chmox on SourceForge |
|
Clearview | macOS | Clearview on iTunes | |
DisplayCHM | Linux | linux-apps |
Creators
Microsoft's HTML Help Workshop generates CHM files by instructions stored in a HTML Help project file, which bears a .HHP
chmcmd
.
Other utilities
The official viewer in Microsoft Windows (hh.exe
) can decompile a CHM file. So can Microsoft HTML Help Workshop and 7-Zip. Calibre and arCHMage can convert CHM into another format.
See also
References
- ^ Techtonik, Anatoly (11 April 2006). "application/vnd.ms-htmlhelp". Retrieved 7 March 2012.
- ^ "Microsoft HTML Help 1.4". Windows Dev Center. Microsoft. Retrieved 10 January 2017.
- ^ "Microsoft Security Bulletin MS02-055 - Critical". docs.microsoft.com. Retrieved 2020-10-29.
- ^ "Full Disclosure: HtmlHelp - .CHM File Heap Overflow". seclists.org. Retrieved 2020-10-29.
- ^ "[SOLVED] Windows 10 CHM Help Files showing up blank. - Spiceworks". community.spiceworks.com. Retrieved 2020-10-29.
- ^ "Microsoft HTML Help Downloads". Microsoft. Retrieved 6 March 2012.
- ^ Wise, Paul; Wing, Jed (2005). "Unofficial (Preliminary) HTML Help Specification". Retrieved 15 August 2012.
- ^ Palade, Alexandru (2005). "Archive::Chm". Retrieved 22 July 2014.
- ^ "Virus Bulletin :: Chamber of horrors". www.virusbulletin.com. Retrieved 2022-01-05.
- ^ "INFO: Limited Unicode Support in HTML Help". Microsoft. 11 April 2001. Archived from the original on 13 March 2016. Retrieved 17 March 2012.
- ISBN 978-1-84882-902-2.
- ^ Wise, Paul; Wing, Jed (2005). "Unofficial (Preliminary) HTML Help Specification INI formats". Retrieved 1 February 2018.
External links
- HTML Help Web Page on MSDN[dead link ]
- Microsoft Help 2 Reference[dead link ]} (part of Visual Studio SDK for VS7.1 and VS8.0)
- History of HTML Help
- Unofficial (Preliminary) HTML Help Specification (the linked ITSF specification has been moved to the Russotto.net domain)