posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          無法打開chm文件

          Posted on 2007-10-06 10:57 semovy 閱讀(411) 評(píng)論(0)  編輯  收藏 所屬分類: 其它
          最近經(jīng)常聽到朋友說無法打開chm文件,自己也經(jīng)常遇到,網(wǎng)上搜索后把方法總結(jié):
          一.如果不能打開,可這樣恢復(fù)文件關(guān)聯(lián):
          1、開始運(yùn)行,輸入:regsvr32 C:\windows\system32\hhctrl.ocx ,確定,重新關(guān)聯(lián)文件。
          2、執(zhí)行一下windows目錄里的hh.exe 。
          有時(shí)候chm文件放在中文目錄就不行。包括中文chm名字。試著把文件考出來.中文名字一改.

          二.1.在微軟網(wǎng)站上下載hhupd.exe,安裝hh.exe后并運(yùn)行。
          2.實(shí)際上,下載hhupd.exe后,運(yùn)行后就可以了。這個(gè)東西大小為461kb 3.在c:\windows\system32里找到“Hhctrl.ocx”文件,然后運(yùn)行:“regsvr32“c:\windows\system32\hhctrl.ocx...
          網(wǎng)上的解決方法不可行,下載不了hhupd.exe.我直接執(zhí)行regsvr32 c:\windows\system32\hhctrl.ocx就ok了。

          解決方法2是:
          1,右鍵關(guān)聯(lián)chm文件的“打開方式”到\Windows\HH.exe
          2,在命令行運(yùn)行regsvr32 itss.dll
          3,在命令行運(yùn)行regsvr32 hhctrl.ocx

          三.也許是 HH.EXE 所必需的某個(gè)組件出了問題。但是不知道 HH.EXE 會(huì)用到些什么組件,所以上網(wǎng)查了一下,有人建議重新注冊 hhctrl.ocx。我在系統(tǒng)目錄下找到了 hhctrl.ocx,重新注冊一下 hhctrl.ocx 試試:regsvr32 hhctrl.ocx。依然不能正常閱讀 CHM。

          既然如此,很有可能是協(xié)議出了問題。HH.EXE 用的是 ms-its 等協(xié)議,這些協(xié)議應(yīng)該是由某個(gè) DLL 文件提供服務(wù)的。問題是,是什么 DLL 呢?于是再用 Google 搜索 ms-its 協(xié)議。終于找到了,原來是一個(gè) itss.dll 在做服務(wù)。不過網(wǎng)上查到的解決方案是修改注冊表。

          要修改 ItssRestrictions 注冊表項(xiàng)以啟用特定的安全區(qū)域,請按照下列步驟操作:
          1. 單擊“開始”,單擊“運(yùn)行”,鍵入 regedit,然后單擊“確定”。
          2. 找到并單擊下面的子項(xiàng):
          HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions
          注意:如果該注冊表子項(xiàng)不存在,則使用方法 1 中的步驟 2a 和 2b 創(chuàng)建該子項(xiàng)。
          3. 右鍵單擊“ItssRestrictions”子項(xiàng),指向“新建”,然后單擊“DWORD 值”。
          4. 鍵入 MaxAllowedZone,然后按 Enter 鍵。
          5. 右鍵單擊“MaxAllowedZone”值,然后單擊“修改”。
          6. 在“數(shù)值數(shù)據(jù)”框中,鍵入 0 至 4 之間的一個(gè)數(shù)字,然后單擊“確定”。
          7. 退出注冊表編輯器。
          注意:默認(rèn)情況下,“MaxAllowedZone”值設(shè)置為 0。下表摘要列出了“MaxAllowedZone”值對(duì)各個(gè)項(xiàng)的解釋。 MaxAllowedZone 本地計(jì)算機(jī)區(qū)域 本地 Intranet 區(qū)域 受信任的站點(diǎn)區(qū)域 Internet 區(qū)域 受限站點(diǎn)區(qū)域
          0 允許 阻止 阻止 阻止 阻止
          1 允許 允許 阻止 阻止 阻止
          2 允許 允許 允許 阻止 阻止
          3 允許 允許 允許 允許 阻止
          4 允許 允許 允許 允許 允許

          注冊表修改之后還是不能打開!
          試試偷懶的辦法吧——重新注冊DLL:regsvr32 itss.dll。

          四.操作系統(tǒng)的語言不是中文(經(jīng)常出現(xiàn)這種情況)
          1.看看你的 OS 是不是中文的 OS ? 如果你的 OS 不是 中文的,那么到 Control Pane 中看看那個(gè)“語言和區(qū)域” 的option, 打開看看“區(qū)域選項(xiàng)” 是不是中國,這個(gè)選項(xiàng)對(duì)一些軟件還是有一些影像的。
          2.如果你的CHM文件是中文的,可能存在缺省語言設(shè)置問題。可能你用是的英文版的WINDOWS,把RAGIONAL AND LANGUAGE OPTIONS中的LANGUAGE 和ADVANCED 中的 語言和國家選項(xiàng)都設(shè)置成中文(PRC)。就可以了

          五.可以試試改變此文件的名字.比如去掉多余的符號(hào)

          六.如果都不能,最后一招就是,把電子書CHM格式轉(zhuǎn)換為PDF文件:
          CHM Converter是一個(gè)專門轉(zhuǎn)換CHM格式的文件,它可以把CHM文件轉(zhuǎn)換成PDF、TXT、DOC等常用的格式。


          下載后運(yùn)行軟件,軟件默認(rèn)是英文界面,點(diǎn)擊菜單“Tools-Language”,在彈出的對(duì)話框中選擇“Chinese_Simplified”就可以換成中文了,軟件還支持其他很多語言。

          選好語言后點(diǎn)擊左上角的“打開”按鈕來選擇要轉(zhuǎn)換的CHM文件,如果CHM文件是英文版的,那么在旁邊的下拉菜單中就選擇 “DEFAILT_CHARSET”,如果是中文的,那需要在下拉菜單中選擇“GB2312_CHARSET”,否則會(huì)產(chǎn)生亂碼,然后在右面的“導(dǎo)出”中來選擇要轉(zhuǎn)換的文件類型,軟件支持很多格式的文件,如這里選擇“Word97-2003”,最后點(diǎn)擊“另存數(shù)據(jù)庫為”按鈕,選擇保存的文件夾后就開始進(jìn)行轉(zhuǎn)換了。

          PS: Window2K中不能打開*.chm文件的解決辦法
          這個(gè)問題的發(fā)生,是由于hhctrl.ocx的版本號(hào)出現(xiàn)錯(cuò)誤或未正確注冊。原因在于安裝的其他軟件用hhctrl.ocx的舊版本替換了原來的版本。
          IE6SP1中,這個(gè)文件的版本號(hào)應(yīng)為5.2.3735.0。可以看看你的系統(tǒng)這個(gè)文件的版本號(hào)。
          位于winnt/system32這個(gè)文件夾。大小504K(英文版本)從其他相同的系統(tǒng)(IE版本也相同)中COPY一份
          粘貼到你的系統(tǒng)相應(yīng)文件夾中。然后注冊一下。

          注意:
          1、先替換winnt/system32/dllcache文件夾的這個(gè)文件
          后替換winnt/system32文件夾里的這個(gè)文件
          2、如果看不到這個(gè)文件,
          先工具--文件夾選項(xiàng)中,設(shè)置顯示隱藏文件
          并設(shè)置顯示系統(tǒng)文件
          3、注冊的方法是
          開始--運(yùn)行,輸入regsvr32 hhctrl.ocx
          之后出來一個(gè)注冊成功的對(duì)話框,確定然后重啟系統(tǒng)。
          主站蜘蛛池模板: 建德市| 舞钢市| 宁南县| 丹巴县| 轮台县| 图们市| 寿光市| 都匀市| 姚安县| 禹城市| 池州市| 榆社县| 牙克石市| 宁化县| 龙南县| 安平县| 祥云县| 商都县| 玉树县| 鹤岗市| 名山县| 科技| 松原市| 道孚县| 西安市| 米泉市| 万全县| 南京市| 杭州市| 龙海市| 卢湾区| 新巴尔虎右旗| 安泽县| 科技| 汉阴县| 盐源县| 新乡县| 邯郸县| 嘉峪关市| 东源县| 临城县|