您当前所在位置:首页>最新资讯 > 科技视界 > chm无法显示内容的解决方法

chm无法显示内容的解决方法

更新时间2014-06-09    来源:本站整理

这篇文章主要介绍了chm无法显示内容的解决方法,需要的朋友可以参考下: CHM 意为 Compiled HTML。以CHM为扩展名的文件图标通常为一个带问号的文档图标。

表示帮助文档,是 Microsoft 自 Windows 98 以来提供的一种帮助文档格式的文件,用于替代 Windows 95 下的 HLP(Help) 文件。Microsoft 自 Windows 98 以来,操作系统中都自带解释器(打开 CHM 文件的工具)。

即 Windows 安装目录下的 HH.EXE。CHM 文件可以通过官方免费提供了 HTML Help Workshop 生成,它的源文件是 HTML 文件。现在网络上很多电子书籍都被制作成 CHM 格式。

一、如果提示是:如果提示是Internet Explorer 不能链接到您请求的网页或者打开后“页面无法显示”。

请在要打开的CHM文件上右键属性,会在底下属性中多了一个“解除锁定”,点击后就可以正常显示了。

或者在记事本中保存下列内容为00.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"=""

以上内容复制到一个文本文件,然后把文件名后缀改成.reg,然后点击即可

二、如果提示是:"不能打开文件mk:@MSITStore:\****.chm" 造成这个故障有可能是你的系统中的Hhctrl.ocx文件丢失或者被其他版本的Hhctrl.ocx覆盖掉了,可以从相同的电脑或者安装光盘中拷贝过来一个,然后重新注册Hhctrl.ocx文件:具体步骤如下:

第一步:退出正在运行的所有程序,单击“开始-〉程序”;

第二步:在运行对话框键入"regsvr32 c:\windows\system\hhctrl.ocx"回车,或”regsvr32 /i hhctrl.ocx“出现"DllRegisterServer成功"消息确定,重启计算机即可。

三、其它方法

1,从windows的控制面板进入“语言和区域”-“区域选项”,如果区域不是中文请改为中文

2,把文件名称改为E 文的简单一点(a.chm),copy 到一个根目录下面,打开看看,如果不行,请重新下载,有的时候下载过程出了问题,看看是否OK

3,如果多数CHM都打不开,试试重新注册regsvr32 itss.dll

(1)右键关联chm文件的“打开方式”到\Windows\HH.exe

(2)在命令行运行regsvr32 itss.dll

(3)在命令行运行regsvr32 hhctrl.ocx

(4)开始--运行--输入“regedit”,打开注册表,找到以下分支: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions 在其下新建DWORD键MaxAllowedZone,将其值取成3试一下

(5)没有正确安装或被你删除了hh.exe文件,你可以到Windows\system32下查一下。

如果是这样那你可以从别人的电脑上copy一个hh.exe ,放到上面那个目录里,再双击一个chm文件,让你选择程序就选那个C:\windows\hh.exe ,这样就恢复了chm文件和hh.exe的关联

1.在微软网站上下载hhupd.exe,安装hh.exe后并运行。

2.实际上,下载hhupd.exe后,运行后就可以了。这个东西大小为461kb

3.在c:\windows\system32里找到“Hhctrl.ocx”文件,然后运行:“regsvr32 c:\windows\system32\hhctrl.ocx...

(6)如果以上几种情况都好的话,删除"hh.dat", 在目录 \Documents and Settings\%username%\Application Data\Microsoft\HTML Help 下,这个文件包含一些内容可能引起错误

四、开始--运行--输入“regedit”,打开注册表,找到以下分支: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions 在其下新建DWORD键MaxAllowedZone,将其值取成3试一下

五、没有正确安装或被你删除了hh.exe文件,你可以到Windows\system32下查一下。

如果是这样那你可以从别人的电脑上copy一个hh.exe ,放到上面那个目录里,再双击一个chm文件,让你选择程序就选那个C:\windows\hh.exe ,这样就恢复了chm文件和hh.exe的关联

六、如果以上几种情况都好的话,删除"hh.dat", 在目录 \Documents and Settings\%username%\Application Data\Microsoft\HTML Help 下,这个文件包含一些内容可能引起错误

方法 1

1. 双击此 .chm 文件。

2. 在“打开文件安全警告”对话框,单击以清除“打开此文件前始终询问”复选框。

3. 单击“打开”。

方法 2

1. 右键单击该 CHM 文件,然后单击“属性”。

2. 单击“取消阻止”。

3. 双击此 .chm 文件以打开此文件。 chm文件无法打开问题的解决 刚从家回来,重新安装了系统,发现原来可以正常打开的chm文件无法打开了,自己试着解决了,发出来共享一下。 系统版本 xp sp2专业版本。

问题:chm文件打开无法显示 “CHM格式的文件无法显示,而且windows 2000上正常,windows xp上打开后显示无法找到页面,在某些CHM文件中可能会使用到InfoTech协议。

而它包含3种协议:

ms-its 、its、mk:@msitstore 。利用这些协议,恶意攻击者或者恶意代码将可能导致帮助产生溢出漏洞,从而控制计算机,而MS最新公布的安全更新MS05-026 KB896358修正了这一情况。

并屏蔽了远程链接,这就导致了使用了远程链接的一些CHM页面开启失败,趋势安全站点对此漏洞作出了如下描述: 这个安全问题来自于早先公布的微软HTML Help漏洞。

HTML Help是Windows平台上的标准帮助系统,作者可以使用它为程序或者多媒体主题或者Web站点创建在线的帮助文件,由于HTML Help并不会完全校验输入数据的特性,导致这一点可能被利用。

一个特殊的CHM文件可以导致帮助系统溢出,这个溢出如果被利用,就可以用于执行恶意代码。 这样的恶意CHM文件可以使用“ms-its”协议,通过IE开启。

开启后的CHM文件不再需要用户的参与,就能够自动执行恶意CHM文件和附随的代码,“ms-its”协议是InfoTech 协议的一部分,该协议能够 为ITSS.DLL或者微软InfoTech Storage System Library所执行。

当然,这些恶意的程序无法靠自身传播,仍然需要用户在特定的位置,通过IE和“ms-its”协议访问恶意的CHM文件。 这种情况一旦发生,如果受影响的用户当前登录身份是管理员,远程代码执行的漏洞可以允许恶意用户或者恶意软件。

获得受影响系统的完全控制权限,从而这个恶意用户或者恶意程序得以在此系统上执行代码,并使用完全控制权限安装或者运行程序,并能够察看或者编辑数据,因此,这个漏洞同样也能够被用于复制。

受影响的系统:

复制代码

代码如下:

Microsoft Windows 2000 Service Pack 3

Microsoft Windows 2000 Service Pack 4

Microsoft Windows 98

Microsoft Windows 98 Second Edition

Microsoft Windows Millennium Edition

Microsoft Windows Server 2003

Microsoft Windows XP Service Pack 1

Microsoft Windows XP Service Pack 2

Microsoft Windows Server 2003 for Itanium-based Systems

Microsoft Windows XP -Bit Edition Service Pack 1 (Itanium)

Microsoft Windows XP -Bit Edition Version 2003 (Itanium)

Microsoft Windows XP Professional x Edition Microsoft Windows Server 2003 Service Pack 1

Microsoft Windows Server 2003 with SP1 for Itanium-based Systems

Microsoft Windows Server 2003 x Edition

解决方法如下: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions] "UrlAllowList"="\\\helpfiles\;file://\\\helpfiles"

需要提到一点的是,默认情况下,子健1.x 下可能并不存在 ItssRestrictions子健,您需要手动创建它,然后在其下创建字符串键值 UrlAllowList 。

方法 3

当chm文件的路径中含有“#”“%”等字符时,chm文件能够打开,但将无法显示。

原因是:打开chm文件,相当于输入一条包含文件路径的命令行语句并执行,当路径中插入“#”“%”等字符后,将使命令行的语义发生变化,导致无法正常使用chm,而此时系统又不会有出错的提示,所以很多人被困扰了,呵呵我的C#就是因为其中有了这个#.删除问题解决。

解决办法:删除路径中的特殊字符。

方法 4

安装微软的安全更新 896358 或 890175 后,该补丁对chm的itss协议做了限制。有的chm使用了该协议,所以导致chm无法显示。

解决办法:可以修改注册表、修改安全级别、改itss.dll(这个是听说的);

方法 5

修改注册表

1)新建一个文本文件

2)添加如下内容:

复制代码

代码如下:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]

"MaxAllowedZone"=dword:00000003

另存为HTMLHelp.reg(或其它名称,只要是reg格式就行)

3)双击刚刚新建的reg文件,将它导入注册表,OK,问题搞定

不过这种方法不安全,因为它将将浏览区域等级调整为3了,存在安全隐患,故不推荐。

方法 6

查找目录名称是否有问题,目录名称中有 "#" 字符,去掉有 CHM 文件就显示正常了。

方法 7

有时候如果CHM是中文也会打不开,改成英文字符试验下。

方法 8

右键单击该 CHM 文件,然后单击“属性”, 单击“解除锁定”,. 双击此 .chm 文件以打开此文件。

网友评论

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似"顶"、"沙发"之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。