Home » File types » Document files » CHM (Microsoft Compiled HTML Help, .chm)

CHM (Microsoft Compiled HTML Help, .chm)

Microsoft Compiled HTML Help is a proprietary format for online help files, developed by Microsoft and first released in 1997 as a successor to the Microsoft WinHelp format. It was first introduced with the release of Windows 98, and is still supported and distributed through Windows XP and Vista platforms. HTML Help files are made with help authoring tools. Microsoft ships the Help Workshop with supported versions of Microsoft Windows and makes the tool available for free download. There are also a lot of third-party help authoring tools available. The Microsoft Reader .LIT file format is basically a modification of the HTML Help CHM format.

In 2002, Microsoft announced some security risks associated with the .CHM format, as well as some security bulletins and patches. They have since announced their intentions not to develop the .CHM format further, and will be moving to a new generation of Windows Help called Microsoft Assistance Markup Language in the Windows Vista operating system.

The CHM helpfile has a ".chm" extension. It has a set of web pages written in a subset of HTML and a hyperlinked table of contents. CHM format is optimized for reading, as files are heavily indexed. All files are compressed together with LZX compression. Most CHM browsers have the capability to display a table of contents outside of the body text of the help file.

The file starts with bytes "ITSF" (in ASCII), for "Info-Tech Storage Format". The format has been partially reverse engineered and there are container and internal files specifications available.

On Windows computers, this help file can be compiled using hhc.exe, which is distributed at no charge with the HTML Help Workshop.

There are some open source tools which can read and explore these files (see for example xCHM, KchmViewer, GnoCHM, Chmox for OS X, Chamonix for OS X, Help Explorer Viewer, or the Firefox add-on CHM Reader), but they lack various features of the Microsoft Windows tools, most importantly a write support.