经验技巧

关注公众号 jb51net

关闭
软件教程 > 经验技巧 >

chm文件打不开的解决方法集合

脚本之家

个人问题如下

OS:windows server 2003 sp1

硬件环境:

cpu:1600+

主板:磐正8K7A6

内存:现代256

显卡:GF MX200 64M

硬盘:迈拓40G/7200

症状如下:新从网络上下载的*.chm文件无法正常阅读,每一次打开前总提示不安全。

初步估计和IE的安全有关系,进网上查询结果如下:

症状

安装安全更新 896358 或 Microsoft Windows Server 2003 Service Pack 1 (SP1) 后,在 Internet Explorer 中单击 HTML 帮助 .chm 文件的链接时,可能出现下面的一种或两种症状:
当在“文件下载”对话框中单击“打开”(而不是“保存”)时,无法查看 .chm 文件中的主题。
当在“文件下载”对话框中单击“保存”,然后尝试打开此文件时,无法查看 .chm 文件中的主题。
注意:本文包含以下 Microsoft 知识库文章的补充信息:
232077 (http://support.microsoft.com/kb/232077/) 通过超链接和“文件下载”对话框执行文件
896054 (http://support.microsoft.com/kb/896054/) 无法在安装安全更新 896358、安全更新 840315 或 Windows Server 2003 Service Pack 1 后使用 InfoTech 协议打开远程内容
896358 (http://support.microsoft.com/kb/896358/) MS05-026:HTML 帮助中的漏洞可能允许远程执行代码

原因

安全更新 896358 和 Windows Server 2003 SP1 包括对 InfoTech 协议的更改,这些更改禁止此功能查看远程内容。引入这些更改的目的是为了减少 HTML 帮助中的安全漏洞。安装 896358 或 Windows Server 2003 SP1 后,Temporary Internet Files 文件夹中的文件被视为来自 Internet 区域的内容。因此,当在“文件下载”对话框中单击“打开”时,文件可能会被禁止。此外,安装 896358 或 Windows Server 2003 SP1 后,附件管理器可能将下载的 .chm 文件当作不受信任的文件。因此,您可能无法打开此文件。安装此安全更新和 Windows Server 2003 SP1 后,这些效果是预料之中的。

解决方案

为最终用户提供的解决方案

警告:如果提示从网站打开或保存 .chm 文件,则仅在需要此文件且信任提供此文件的网站的情况下进行此操作。

在“文件下载”对话框中,单击“保存”,然后选择要保存此 .chm 文件的位置。然后,使用下面的方法之一:

方法 1

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

方法 2

1. 右键单击该 CHM 文件,然后单击“属性”。
2. 单击“取消阻止”。
3. 双击此 .chm 文件以打开此文件。

为系统管理员提供的解决方案

要解决此问题,请使用下列方法之一。

使用 UNC 文件路径和文件共享以链接到 .chm 文件

如果 Intranet 网页使用 HTTP URL 方案链接到 .chm 文件,安全更新 896358 可能阻止用户查看 .chm 文件的主题。使用 UNC 文件路径替换 HTTP 文件路径可以重新从网页打开 .chm 文件。

要使用 UNC 文件路径替换 HTTP URL,请按照下列步骤操作:
1. 将 .chm 文件放在可以使用 UNC 文件路径访问的文件共享服务器上。

UNC 文件路径类似于下面的路径:
\\productmanuals\helpfiles
2. 使用 ItssRestrictions\UrlAllowList 值使 Intranet 中的系统能够从此文件共享访问 .chm 文件。

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
896054 (http://support.microsoft.com/kb/896054/) 无法在安装安全更新 896358、安全更新 840315 或 Windows Server 2003 Service Pack 1 后使用 InfoTech 协议打开远程内容
3. 更新 Intranet 网页上的链接,以便在链接到 .chm 文件的 URL 中使用 UNC 文件路径。
注意:此方法仅对来自 Intranet 区域的页面有效。对于来自 Internet 区域的页面,此方法无效。

设置 Web 应用程序以下载 .chm 文件

在链接 .chm 文件的网页上,请添加说明以建议用户保存文件,而不是直接打开此文件。有关更多信息,请参见“为最终用户提供的解决方案”一节。

您也可以使用 DownloadOptions <META> 标记从在用户单击 .chm 文件的链接后显示的“文件下载”对话框中删除“打开”按钮。将此标记放在 HTML 页面的 <head> 标记内。下面的示例说明了此用法。
<head>
<META name="DownloadOptions" content="noopen">
</head>
注意:<META> 标记仅影响某些操作系统。有关更多信息,请访问下面的 Microsoft 网站:
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/name_1.asp (http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/name_1.asp)

更多信息

系统管理员概述和示例

有关安全更新 896358 以及如何重新启用受此更新影响的 Web 应用程序的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
896358 (http://support.microsoft.com/kb/896358/) MS05-026:HTML 帮助中的漏洞可能允许远程代码执行

Internet Explorer

有关在 Internet Explorer 中通过超链接打开文件的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
232077 (http://support.microsoft.com/kb/232077/) 通过超链接和“文件下载”对话框执行文件
有关如何在 Internet Explorer 中使用安全区域的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
174360 (http://support.microsoft.com/kb/174360/) 如何在 Internet Explorer 中使用安全区域

对基于 x64 的 Microsoft Windows 版本的技术支持

在运行基于 x64 的 Microsoft Windows 版本的计算机上,您可能必须适当地更改“解决方案”一节中关于如何修改注册表的说明。例如,根据要修改 32 位功能还是要修改 64 位功能,您可能需要修改注册表中不同的部分。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
896459 (http://support.microsoft.com/kb/896459/) 基于 Windows x64 Edition 的操作系统中的注册表更改
硬件制造商为基于 x64 的 Windows 版本提供了技术支持和帮助。硬件制造商提供支持是因为基于 x64 的 Windows 版本是随硬件提供的。您的硬件制造商可能已用独特的组件自定义了 Windows 的安装。独特组件可能包括特定的设备驱动程序,或者包括用于将硬件性能发挥到最大的可选设置。如果您需要基于 x64 的 Windows 版本的技术帮助,Microsoft 将尽可能提供合理的帮助。但是,您可能必须与制造商直接联系。您的制造商最有资格为安装在您的硬件上的软件提供支持。

有关 Microsoft Windows XP Professional x64 Edition 的产品信息,请访问下面的 Microsoft 网站:
http://www.microsoft.com/china/windowsxp/64bit/default.mspx (http://www.microsoft.com/china/windowsxp/64bit/default.mspx )
有关基于 x64 的 Microsoft Windows Server 2003 版本的产品信息,请访问下面的 Microsoft 网站:
http://www.microsoft.com/china/windowsserver2003/64bit/x64/default.mspx (http://www.microsoft.com/china/windowsserver2003/64bit/x64/default.mspx )

这篇文章中的信息适用于:
Microsoft Windows Server 2003 Service Pack 1 当用于
Microsoft Windows Server 2003 64-bit Enterprise Edition
Microsoft Windows Server 2003, Datacenter Edition for 64-Bit Itanium-Based Systems
Microsoft Windows Server 2003, Enterprise x64 Edition
Microsoft Windows Server 2003, Standard x64 Edition
Microsoft Windows Server 2003, Datacenter x64 Edition
Microsoft Windows 2000 Professional Edition
Microsoft Windows 2000 Service Pack 3
Microsoft Windows 2000 Service Pack 4
Microsoft Windows 2000 Service Pack 3
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Datacenter Server
Microsoft Windows 2000 Service Pack 3
Microsoft Windows XP Service Pack 2
Microsoft Windows XP Service Pack 1
Microsoft Windows XP Professional 64-Bit Edition (Itanium) 2003
Microsoft Windows XP Professional 64-Bit Edition (Itanium)
Microsoft Windows 98 第二版
Microsoft Windows 98 Standard Edition
Microsoft Windows Millennium Edition

关于96358补丁详细资料可以查看http://support.microsoft.com/kb/896358

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

以上问题以解决,最后的转载的来自百度知道,前面的来自微软,分析的也还不错,可根据情况解决自己的问题,如果是专业人士可以看补丁详细资料。