水浒少年陆亚萍长大后:chm文件打不开的解决办法

来源:百度文库 编辑:中财网 时间:2024/05/11 04:09:19
 

  chm是微软的帮助文档,许多程序的说明文档还有电子书都是用它制作的。
我们下载一个chm文档后可能经常会有打不开的情况,而在其它的一些电脑上却能正常打开,这说明不是文档本身的问题,而是系统设置的问题。

        其实这是为了安全而作的一种限制,我们知道很多不安全的东西大多是通过网页传播的,网页里面可能含有各种脚本,能执行很多功能,而chm文件本质上就是编译过的网页。从网上直接下载的网页、chm文件和exe程序都会被系统标记为来源于网络的,是不安全的,一般打开的时候都会出现警告,把“打开此文件前总是询问”前的钩去掉可以让它对该文件不再提示。然而有时候打开chm文件不会出现提示,直接显示“该页无法显示”或者“已取消到该网页的导航”“internet explorer 不能链接到您请求的网页”之类的错误,这该怎么办呢?
        在chm文件上点右键->属性->常规->解除锁定,这样就可以打开了。
但是上述方法并不总是有效的,也许有的版本的系统根本找不到“解除锁定”这个选项,这时可以通过修改注册表解决,将以下内容打开保存到为后缀为reg的文件打开即可
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\HHRestrictions]
"MaxAllowedZone"=dword:00000003
"UrlAllowList"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000003
"UrlAllowList"=""
     这是最有效的方法,对于各种系统均能用。
      那么“MaxAllowedZone”的值为3是什么意思呢?
AllowedZone是允许的区域,所有的区域包括以下几个:
本地计算机 internet 本地intranet 可信站点 受限站点

       我们可以在internet选项里面找到有后四个区域,
值为0表示本地计算机,为1则表示前两个,为2为前三个,为3为前四个。
所以"MaxAllowedZone"=dword:00000003 的含义为允许在 本地计算机、internet、本地intranet、可信站点 上打开该文件。
          REGEDIT4是注册表编辑器的版本,vista和windows 7里面为REGEDIT5,不过老的版本还是照样支持的。
如果chm文档所在文件夹有特殊符号也可能导致打不开的,比如新建一个文件夹,名字为“abc#”,把chm文件放进去就会打不开。

         既然网络上的东西被认为是不安全的,那么为什么网上的网页里的脚本可以直接运行,下载到本地保存再打开会有警告呢?

这是因为我们浏览网页的时候网页的权限是比较低的,不能访问本机上的数据等,而如果下载到本地再打开就是以本地管理员的身份运行的,可能对系统造成损害。但是其实这个限制说实话没什么用,ie经常有各种漏洞使木马可以借此运行,本地的网页一般是安全的。

        有时候下载的电子书是chm版的如果想在手机或者mp4上看,可以将它转换成txt的。chm是从网页编译过来的,当然还编译回去,然后再转成txt的,这样的工具很多,不过真正好用了不多。
用HTML Help Workshop可以创建chm文件,使用方法很简单的。

其他回答:

不知道是如何的大不开,可能有几种情况:一,没有正确安装或被你删除了hh.exe文件,你可以到Windows\system32下查一下。如果是这样那你可以从别人的电脑上copy一个hh.exe ,放到上面那个目录里,再双击一个chm文件,让你选择程序就选那个C:\windows\hh.exe ,这样就恢复了chm文件和hh.exe的关联二,是XP系统的问题。这个问题的发生,是由于hhctrl.ocx、itss.dll的版本号出现错误或未正确注册。注册的方法是:开始--运行,输入regsvr32 hhctrl.ocx 
regsvr32 itss.dll之后出来一个注册成功的对话框,确定后重启系统三,如果以上几种情况都好的话,删除"hh.dat", 在目录\Documents and Settings\%username%\Application Data\Microsoft\HTML Help 下,这个文件包含一些内容可能引起错误