我需要帮助,我有一些 .hlp
文件,想将其转换为 .chm
文件,因为 .hlp
文件在 Windows 10 上无法运行。
我该怎么做?
我需要帮助,我有一些 .hlp
文件,想将其转换为 .chm
文件,因为 .hlp
文件在 Windows 10 上无法运行。
我该怎么做?
根据您的要求,我看到有两种或更多解决方案:
将WinHelp(HLP)转换为HTMLHelp(CHM):
我的网站上有一篇教程,提供了一个逐步描述如何在免费软件/共享软件和“低预算”水平上将WinHelp(HLP)转换为HTMLHelp(CHM)。下载区的转换项目示例包括一个工作结构和示例文件。
当然,您可以使用帮助撰写工具(HAT),例如Help+Manual,HelpScribble或任何其他HAT,将现有的WinHelp项目转换为HTMLHelp。
在Windows 10上运行WinHelp:
WinHlp32 for Windows 10恢复了在Windows 10上打开和查看.hlp文件的功能。
WinHelp (.hlp) 格式自上世纪90年代初就存在了,已被HTML Help 1.x (.chm) 取代。微软强烈建议您在大约十年前停止使用 WinHelp。但对于一个测试应用程序,在我的Windows10机器上运行得非常好。
对于修复旧版 WinHelp Viewer,需要一些繁琐的步骤。请注意,我这里不是指 *.chm 帮助文件的 HTMLHelp Viewer。
以下解决步骤取决于您的 Windows 10 版本(32 位或 64 位)。要查找您的系统类型(32 位或 64 位),按住 Windows+R。在弹出的运行对话框中键入 msinfo32
并按 Enter。
您知道,尝试打开帮助文件 (*.hlp) 会导致访问 Microsoft 支持页面。Windows 程序中打开帮助时出错:“未包含该功能”或“不支持帮助”。
您将找到适用于 Windows 8.1 的下载链接,但必须以特殊方式安装才能在 Windows 10 上使用(Windows8.1-KB917607-x64.msu)。
md msu-extracted
expand Windows8.1-KB917607-x64.msu /f:* .\msu-extracted
使用上述命令解压缩包含在内的279个文件的CAB文件。
cd msu-extracted
md cab-extracted
expand Windows8.1-KB917607-x64.cab /f:* .\cab-extracted
cd cab-extracted
Navigate to the given path for your language "... de-de ..." e.g.:
cd amd64_microsoft-windows-winhstb.resources_31bf3856ad364e35_6.3.9600.20470_de-de_1ab8cd412c1028d0
Here we'll find “winhlp32.exe.mui”. Now we need to replace e.g. %SystemRoot%\de-de\winhlp32.exe.mui with our new file:
takeown /f "%SystemRoot%\de-de\winhlp32.exe.mui"
icacls "%SystemRoot%\de-de\winhlp32.exe.mui" /grant "%UserName%":f
ren %SystemRoot%\de-de\winhlp32.exe.mui winhlp32.exe.mui.w10
copy winhlp32.exe.mui %SystemRoot%\de-de\winhlp32.exe.mui
takeown /f "%SystemRoot%\winhlp32.exe"
icacls "%SystemRoot%\winhlp32.exe" /grant "%UserName%":f
ren %SystemRoot%\winhlp32.exe winhlp32.exe.w10
cd ..
dir *.exe /s
Find the right path starting either with amd64 or x86 and navigate to it:
cd "amd64_microsoft-windows-winhstb_31bf3856ad364e35_6.3.9600.20470_none_1a54d9f2f676f6c2"
copy winhlp32.exe %SystemRoot%\winhlp32.exe
编辑:
在最后一个cd
命令步骤中,你不需要替换_none_
(所有单个步骤都在2017年9月1日和2018年8月24日经过测试,在Windows 10上工作)。
主要Microsoft Windows更新后,以上所述的解决方法会被重置。
编辑:(从评论中复制,感谢@dxiv)
最后几步的另一种选择是将winHlp32文件完全复制到其他位置,如C:\ etc [\ de-de],然后在提升的命令提示符中重新关联ftype hlpfile = C:\ etc \ winHlp32%1。这避免了与sfc和未来的Windows更新冲突,并且当通过关联打开HLP时仍然可以正常工作(在资源管理器中双击或在cmd提示符中启动old.hlp)。
C:\etc[\de-de]
,然后在提升的命令提示符中重新关联ftype hlpfile=C:\etc\winHlp32 %1
。这避免了与sfc和未来的Windows更新冲突,并且当通过关联打开HLP(在资源管理器中双击或在cmd提示符中键入“start old.hlp”)时,HLP仍将正常工作。 - dxiv.exe
文件是不够的,你还需要从包中获取其他.dll
和.mui
文件。这与你看到的错误9009一致,意味着找不到文件。 - dxivwindow.gadb=false
可以绕过该页面的反广告拦截器。 - Adam这将提取如果您有一个没有HPJ和RTF源文件的现有WinHelp文件,您可以下载WinHelp反编译器从HLP文件重新创建HPJ和RTF源文件。将helpdc21.zip中的文件提取到一个新文件夹中。然后,您可以通过在命令提示符中输入:
helpdeco helpfile.hlp
(其中helpfile.hlp是您要反编译的帮助文件),轻松反编译任何.hlp文件。反编译器将生成HPJ和RTF文件以及一系列位图文件(如果帮助文件包含图像)。在HelpScribble中使用“项目|导入帮助项目”导入帮助文件。
hlp
文件的源文件。hpj
文件。从那里,您可以使用选项制作平面手册将其简单地导出为html文件。大家好,经过长时间的搜索,我的结论是:.HLP文件无法在Windows 8和10上执行,只能在Windows 7及以下版本上执行。.CHM文件可以在Windows 8和Windows 10上执行。因此,我不得不在Windows 10上使用Help Development Studio创建我的新.chm文件以便在其上执行。我的旧文件.HLP已经过时了。虽然这花费了我很多时间,但我对这种类型的文件有了更深入的了解。 最后,感谢您对我的问题的贡献。