chm文件大不开
或在要打開的CHM文件上右鍵屬性,會在底下屬性中多了一個“解除鎖定”,點擊后就可以正常顯示了。
chm.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,然后點擊即可
2、如果提示是:"不能打開文件mk:@MSITStore:\****.chm"
造成這個故障有可能是你的系統中的Hhctrl.ocx文件丟失或者被其他版本的Hhctrl.ocx覆蓋掉了,可以從相同的電腦或者安裝光盤中拷貝過來一個,然后重新注冊Hhctrl.ocx文件:具體步驟如下:
第一步:退出正在運行的所有程序,單擊“開始-〉程序”;
第二步:在運行對話框鍵入"regsvr32 c:\windows\system\hhctrl.ocx"回車,或”regsvr32 /i hhctrl.ocx“出現"DllRegisterServer成功"消息確定,重啟計算機即可。
3、其它方法
1,從windows的控制面板進入“語言和區域”-“區域選項”,如果區域不是中文請改為中文
2,把文件名稱改為E 文的簡單一點(a.chm),copy 到一個根目錄下面,打開看看,如果不行,請重新下載,有的時候下載過程出了問題,看看是否OK
3,如果多數CHM都打不開,試試重新注冊regsvr32 itss.dll
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的關聯。
6,如果以上幾種情況都好的話,刪除"hh.dat", 在目錄
\Documents and Settings\%username%\Application Data\Microsoft\HTML Help 下,這個文件包含一些內容可能引起錯誤
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的關聯。
6、如果以上幾種情況都好的話,刪除"hh.dat", 在目錄
\Documents and Settings\%username%\Application Data\Microsoft\HTML Help 下,這個文件包含一些內容可能引起錯誤。
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。
總結
- 上一篇: linux资源使用统计指南,指南:工作量
- 下一篇: Replace Temp with Qu