根据您的要求,我看到两个或更多解决方案:
- 将 WinHelp (HLP) 转换为 HTMLHelp (CHM) 或 PDF
- 在 Windows10 上运行 WinHelp 文件
将 WinHelp (HLP) 转换为 HTMLHelp (CHM):
我网站上的教程提供了step-by-step description 如何在免费软件/共享软件和“低预算”级别上将 WinHelp (HLP) 转换为 HTMLHelp (CHM)。下载部分的转换项目示例包括工作结构和示例文件。
您当然可以使用帮助创作工具 (HAT),如 Help+Manual、HelpScribble 或任何其他 HAT 将现有 WinHelp 项目转换为 HTMLHelp。
在 Windows 10 上运行 WinHelp:
WinHelp (.hlp) 格式自 1990 年代初就已存在,并已被 HTML Help 1.x (.chm) 取代。 Microsoft 强烈建议您在大约十年前离开 WinHelp。但是对于一个测试应用程序,它在我的 Windows10 机器上运行就像一个魅力。
但修复过去的 WinHelp 查看器需要一些繁重的步骤。请注意,我在这里没有提到 *.chm 帮助文件的 HTMLHelp 查看器。
遵循解决方案步骤取决于您的 Windows 10 版本(32 位或 64 位)。要了解您的系统类型(32 位或 64 位),请按住 Windows+R。在出现的运行对话框中输入msinfo32,然后回车。
您知道,尝试在 Microsoft 支持页面上打开帮助文件 (*.hlp) 会导致结果。Error opening Help in Windows-based programs: "Feature not included" or "Help not supported"。
您会找到适用于 Windows 8.1 的下载链接,但您必须以特殊方式安装适用于 Windows 10 的 (Windows8.1-KB917607-x64.msu)。
- 以管理员身份启动命令提示符(请注意 - 此处为德语示例)!
-
将下载的 .msu 文件解压到一个临时目录
md msu-extracted
expand Windows8.1-KB917607-x64.msu /f:* .\msu-extracted
-
提取包含的 CAB 文件,其中包含 279 个文件。
cd msu-extracted
md cab-extracted
expand Windows8.1-KB917607-x64.cab /f:* .\cab-extracted
-
根据您的语言设置找到匹配的 MUI 文件,例如使用“cs-”、“de-”或“en-”。使用 x86 变体的人需要运行“dir x86*de-*”。
cd cab-extracted
-
导航到您的语言“... de-de ...”的给定路径,例如:
cd amd64_microsoft-windows-winhstb.resources_31bf3856ad364e35_6.3.9600.20470_de-de_1ab8cd412c1028d0
-
在这里我们会找到“winhlp32.exe.mui”。现在我们需要替换例如
%SystemRoot%\de-de\winhlp32.exe.mui 和我们的新文件:
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
-
找到以 amd64 或 x86 开头的正确路径并导航
给它:
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 更新后重置上述解决方法。
编辑:(从 cmets 复制,感谢 @dxiv)
最后几个步骤的替代方法是将 winHlp32 文件完全复制到其他位置,例如 C:\etc[\de-de],然后在提升的位置重新关联 ftype hlpfile=C:\etc\winHlp32 %1命令提示符。这样可以避免与 sfc 和未来的 windows 更新发生冲突,并且 HLP 在通过关联打开时仍然可以工作(在资源管理器中双击,或在 cmd 提示符下启动 old.hlp)。