Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 關於電腦軟件教程 >> chm無法顯示內容的解決方法

chm無法顯示內容的解決方法

日期:2017/2/10 13:29:31      編輯:關於電腦軟件教程
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的關聯
在微軟網站上下載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 文件以打開此文件。

Copyright © Windows教程網 All Rights Reserved