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:
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.