I had couple of .CHM files, specially for C# .NET related stuff and I saw some of the chm files when I open them I see "This page cannot be displayed" error. Finally I figured out that there could be two reasons for this:

[Option 1 courtesy chan.chawla from the posted comment, adding as the first option to be tried out before going any further]

1. Double click the .chm file. It will open a security dialog. Uncheck "Always ask after opening this file". Alternatively, right click on the file you want to open, click Properties and then click Unblock. This should do the trick.

2. If you chm file name or the path contains '#' character, just get rid of that and I guess you would be able to start viewing your chm files again.

3. If nothing works, try this.

Because of a Microsoft Service Pack, the chm files does not have enough permissions (by default). This case is usually when you try to open .chm files over network. The resolution for this is as follows:

  • Click Start, click Run, type regedit, and then click OK.
  • Locate and then click the following subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions [If this registry subkey does not exist, create it]
  • Right-click the ItssRestrictions subkey, point to New, and then click DWORD Value.
  • Type MaxAllowedZone, and then press Enter.
  • Right-click the MaxAllowedZone value, and then click Modify.
  • In the Value data box, type 1, and then click OK.
  • Quit Registry Editor.

For more information check http://support.microsoft.com/kb/896358.

4. One more reason provided for unable to open chm files [courtesy colin.cole]

Any chm file that is in a folder named *.col* will not open. Example paths that will cause this error: c:\asdf.col\TFSInstall.chm c:\documents and settings\john.coltrane\desktop\TFSInstall.chm

Solution: Move file somewhere else on your computer.