天天看點

chm無法顯示的解決辦法

昨天下載下傳了一個C#的幫助文檔,居然打不開,很是郁悶.... 後來查了查才知道 原來是這樣.

chm的設計者的初衷是用來做幫助文檔,其本質是一堆html網頁檔案的組合。後來有了專門的編譯器、反編譯器,人們發現chm這東西具有的html的特性,使其用來做電子書實在是又好又友善,連html裡面的腳本特效什麼的都能保留下來。是以現在有很多資料采用這種格式。

1、系統将chm預設關聯到“windows/hh.exe”,正常時輕按兩下即可打開。本文不涉及chm打不開的情況,打不開的請參考http://zhidao.baidu.com/question/17011349.html?fr=qrl3

2、當chm檔案的路徑中含有“#”“%”等字元時,chm檔案能夠打開,但将無法顯示。

原因是:打開chm檔案,相當于輸入一條包含檔案路徑的指令行語句并執行。當路徑中插入“#”“%”等字元後,将使指令行的語義發生變化,導緻無法正常使用chm,而此時系統又不會有出錯的提示,是以很多人被困擾了。呵呵我的C#就是因為其中有了這個#.删除問題解決.

解決辦法:删除路徑中的特殊字元。

3、安裝微軟的安全更新 896358 或 890175 後,該更新檔對chm的itss協定做了限制。有的chm使用了該協定,是以導緻chm無法顯示。

解決辦法:可以修改系統資料庫、修改安全級别、改itss.dll(這個是聽說的);或者最簡便的辦法:右鍵點chm—>選屬性—>選解除鎖定,ok!