转自neeao's blog

今天打开一个.chm格式的帮助文件查点资料,和平常一样双击文件,提示:
打不开文件 .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 格式。

------------------------------------------------------------------
前几天想打开一本 CHM 格式的电子书,查点东西,没想到,打开的窗口里竟然提示不能打开页面。因为一直很少用帮助,所以也不知道是什么时候开始出现了这个问题的。因为没时间去考虑,所以先在网上查了资料,把这个问题放下了。

今天又一次打开某 CHM 文档的时候,发生了同样的问题。这次有时间。试了一下,几乎所有 CHM 文件都打不开了。看样子是打开过程(指的是系统中的操作过程,非人为操作过程)中的某个关键步骤出了问题。

CHM 的实质是通过几个特殊的协议访问压缩存在在 CHM 文件中的网页。所以,我估计可能是防火墙有鬼。于是把防火墙统统仔细检查了一遍,没有限制 CHM 文件打读取。关闭所有防火墙,CHM 仍然不能正常阅读。

也许是 HH.EXE 所必需的某个组件出了问题。但是不知道 HH.EXE 会用到些什么组件,所以上网查了一下,有人建议重新注册 hhctrl.dll。我在系统目录下找到了 hhctrl.ocx,没有找到 hhctrl.dll。就当是网上写错了,重新注册一下 hhctrl.ocx 试试: regsvr32 hhctrl.ocx。依然不能正常阅读 CHM。

既然如此,很有可能是协议出了问题。HH.EXE 用的是 ms-its 等协议,这些协议应该是由某个 DLL 文件提供服务的。问题是,是什么 DLL 呢?于是再用 Google 搜索 ms-its 协议。终于找到了,原来是一个 itss.dll 在做服务。不过网上查到的解决方案是修改注册表。看着那一堆注册表项就头痛,还是先试试偷懒的办法吧——重新注册DLL: regsvr32 itss.dll。

再试,嘿,好了,CHM 又可以正常打开了。

至于 CHM 不能打开的原因,据网上说,多半是因为 Microsoft 最近修复的一个关于 HTML Help 的漏洞有关系。不过我机器上的状况不太符合特征,管它呢,反正我又能阅读 CHM 了。

chm文件打不开的解决方法相关推荐

  1. 服务器文档用wps无法打开,wps文件打不开遇到问题该怎么办 wps文件打不开的解决方法...

    当我们想要使用wps软件是,wps文件打不开遇到问题如何解决?相信有很多的wps用户遇到过这种问题,下面教程之家网为大家分享wps文件打不开的解决方法,不知道怎么解决朋友可以参照下面的步骤方法解决就可 ...

  2. 计算机无法播放qsv文件,win10系统QSV视频文件打不开怎么办|win10系统QSV视频文件打不开的解决方法...

    ‍‍ 在win10正式版系统中使用爱奇艺下载的视频文件都是QSV格式,直接打开即可,如果在没有爱奇艺客户端(APP)的电脑该如何打开QSV视频?我们只能转换格式来实现了.把QSV文件转换成MP4格式, ...

  3. win7计算机文件浏览不了,win7系统计算机文件打不开的解决方法

    很多小伙伴都遇到过win7系统计算机文件打不开的困惑吧,一些朋友看过网上零散的win7系统计算机文件打不开的处理方法,并没有完完全全明白win7系统计算机文件打不开是如何解决的,今天小编准备了简单的解 ...

  4. CHM文件打开显示乱码的解决方法

    今天打开CHM文件显示乱码.收集网上的解决方法如下: 一:CHM 的实质是 HTML 文件,找一个CHM解压工具,解压成网页,然后用浏览器打开,自动选择现在字符集编码. 二:在注册表 HKEY_CUR ...

  5. 云服务器 exe文件打不开,详细教您exe文件打不开的解决方法

    exe文件打不开怎么办?很多朋友遇到过exe文件打不开的情况,很有可能是由于一些病毒或者第三方软件引起的.exe文件打不开一般是由于注册表遭到了不当修改造成的,在exe文件打不开的情况下,我们可以通过 ...

  6. 记录Keil5后缀.uvprojx工程文件打不开的解决方法

    用Keil5打不开一个后缀为.uvprojx的工程文件,显示报错如下: 使用过的解决方法如下,但没有解决: 重新安装软件到C盘,并且把一系列文件移动到同一路径下面: 把路径中的中文全部改成英文,并且缩 ...

  7. svn 下载文件打不开,解决方法

    Xcode 工程文件打开不出来, cannot be opened because the project file cannot be parsed. svn更新代码后,打开xcode工程文件,会出 ...

  8. U盘中毒,文件夹或文件打不开的解决方法--实用

    1.如下图,如果U盘出现如下提示,文件夹和文件都变成了.EXE文件,因此,无论如何你都无法打开这些文件,此时你会想到,我们文件不见了?下面教你如何将文件找回来,并撤底拿回你自己的文件 2.解决方法 其 ...

  9. php 下载exe 打不开,EXE文件打不开的解决方法

    今天电脑竟然无法运行exe程序了,还以为是程序坏了.真晕.baidu了一下,找到两个方法.偶是用第二个方法弄好的. 文章如下: 方案一: 1. 点"开始->运行->在里面输入re ...

最新文章

  1. 关于for和foreach,兼顾效率与安全
  2. oracle11g系统初始化意义,Oracle11G 初始化脚本
  3. timertask run函数未执行_图执行模式下的 TensorFlow 2
  4. 课时55.详情和概要标签(理解)
  5. 创业型软件公司的心得
  6. JWT教程_2 SpringSecurity与JWT整合
  7. ARM嵌入式系统开发之接收函数的实现
  8. 秒杀场景下MySQL的低效原因和改进
  9. JVM内存模型和结构详解(五大模型图解)
  10. 工控c语言培训,[转载]最完整的工控培训、PLC培训教程大全
  11. r5驱动 索尼exmor_SONY的驱动安装顺序(还不知道的赶快进来看看!!)
  12. 用于发现软件定义无线电的实时频谱分析仪设备的网络协议
  13. 局域网自定义域名H5站点移动设备测试时的代理设置
  14. 魔王抓住了公主 等笑话
  15. 40行代码的Python爬虫案例:虎牙-王者荣耀主播的人气排行
  16. FreeTextBox编辑框遇到的问题
  17. 28.html设置字体
  18. 《图说区块链》读书笔记(完整版)
  19. 计算机诞生历史小故事
  20. linux服务器引导分区,Linux系统的引导过程和磁盘分区信息

热门文章

  1. MySQL导出表结构表数据以及导入数据
  2. Python基础篇4:判断用户输入的数是正数还是负数
  3. mysql 清除表中的数据 (TRUNCATE )
  4. 音频 Audacity使用技巧详解
  5. day08-java
  6. 北美哪些跨境电商平台十大排行榜
  7. 软件项目管理第二篇:项目计划 (1)——范围计划
  8. ROS学习笔记(八)—— moveit!概述
  9. 20190211 模拟训练 A. 大猫咪
  10. vim:vim从入门到放弃