On Windows 7 I'm unable to open any local CHM files in a folder called
Local.Ebooks.CHMs. I tried modifying the registry, but nothing helped. How can I open these CHM files successfully?
As noted in my comment above, I was able to replicate the bug. Strangely enough, it is not the periods that are causing the issue. Windows 7 seems to have a problem with the string
.chm (case-insensitive) anywhere in the folder hierarchy! This seems to be related to KB 319247, where
# in a folder name is resolved incorrectly. Thanks, @Bob!
For example, if you try to open a CHM file in
Folder.CHMs/Folder, you will be presented with a File Download dialog and a broken CHM file reporting "Navigation to the webpage was cancelled."
As a workaround, you can rename the folder, removing the period
. before the offending
chm (case-insensitive) string. Unfortunately, it is unlikely that Microsoft will ever fix these bugs, seeing as HTML Help was last updated in 2002...
Video demo: youtube.com/watch?v=7x40fHXRQqU
If the .chm files were downloaded from the internet, then they will be BLOCKED by Windows. You can unblock them by opening the Properties dialog and checking the Unblock box at the bottom.
Microsoft Security Updates 896358 & 840315 block display of CHM file contents when opened from a network drive (or a UNC path). This is window's attempt to stop attack vectors for viruses/mal-ware from infecting your computer and has blocked out the .chm file that draw data over the "InfoTech" protocol, which this chm file uses.
Microsoft's summary of the problem: http://support.microsoft.com/kb/896054
If you are using Windows Server 2008 or Windows 7, or other modern Windows OS, windows has created a quick fix. Right click the chm file, and you will get the "yourfile.chm Properties" dialog box, at the bottom, a button called "Unblock" appears. Click Unblock and press OK, and try to open the chm file again, it works correctly. This will not work for Windows XP or other earlier versions of windows.
Solve the problem by moving your chm file OFF the network drive. You may be unaware you are using a network drive, double check now: Right click your .chm file, click properties and look at the "location" field. If it starts with two backslashes like this: "\\epicserver\blah\", then you are using a networked drive. So to fix it, Copy the chm file, and paste it into a local drive, like C:\ or E:. Then try to reopen the chm file, windows does not freak out.
Last resort, if you can't copy/move the file off the networked drive. If you must open it where it sits, and you are using a lesser version of windows like XP, Vista, ME or other, you will have to manually tell Windows not to freak out over this .chm file. HHReg (HTML Help Registration Utility) Utility Automates this Task. Basically you download the HHReg utility, load your .chm file, press OK, and it will create the necessary registry keys to tell Windows not to block it. For more info: http://www.winhelponline.com/blog/fix-cannot-view-chm-files-network-xp-2003-vista/