古い「Windowsヘルプ」ファイル ( 拡張子が.hlp ) を確認する機会がありました。
ほとんどの人は、もう使う機会がないと思います。

でも、Windows 10以降では、フェイルセーフとして、
スタブが用意されていたりするので、
古いソフトを使う人としてはありがたいことです。

インターネットで調べると、
  • "Windows 8.1 用更新プログラム" に含まれる "winhlp32.exe" を使う方法
  • "Windows XP Service Pack3" に含まれる "winhlp32.exe" を使う方法
が多いようです。
結構めんどうなので、もっと簡単な方法はないか、試してみました。



では、どこから "winhlp32.exe" を持ってくるのがベストなのか!
まず、もともと、「Windowsヘルプ」ファイルを使用していたころは、
32bit環境 であり、ファイル名からしても、32bit版 です。
しかも、当時は、
MUIではなかった ので、MUI版である必要がない ということです。
WIndows 8.1は、MUI版です

結論、"Windows XP Service Pack3" に含まれる "winhlp32.exe" を使う。

入手方法ですが、
1. "Windows XP Service Pack3" は、"Microsoft Update カタログ" でダウンロード
2. 7zなどのツールを使用して、"i386\winhlp32.ex_" を取り出す。
3. expand コマンドで、"winhlp32.ex_" を "winhlp32.exe" に戻す。
で入手できます。

私はコマンドで実施したので記載しておきます。
curl.exeとexpand.exe はWindowsに含まれています。
7zをお持ちでない方は、2行目は書き換えて使ってくださいね。
(下記は改行されているように見えますが、実際は3行です。)
curl.exe -O https://catalog.s.download.windowsupdate.com/msdownload/update/software/svpk/2008/04/windowsxp-kb936929-sp3-x86-jpn_e0fc34cfa52d270b3c79a68af8fa358244f7419e.exe

"C:\Program Files\7-Zip\7z.exe" e windowsxp-kb936929-sp3-x86-jpn_e0fc34cfa52d270b3c79a68af8fa358244f7419e.exe i386\winhlp32.ex_

expand.exe winhlp32.ex_ winhlp32.exe
   



つぎに、どこに配置するのが、ベストなのか!
"C:\Windows\winhlp32.exe" を差し替える。
という記事が多いですが、あまりよろしくないです。

システムが管理しているファイルですので、Windows Updateや、修復などで、
もとのファイルに戻る可能性もあります。

結論、適当なフォルダーを作成 し、そこに配置 する。

私はどこに配置したかというと、
C:\Tools\WinHelp
に配置しました。みなさまは、お好きな場所に配置してくださいね。



残りは、レジストリーです。
Windowsはこのレジストリーを参照して起動します。
なので、上記でわざわざ、
Windowsフォルダー配下に格納する必要はないのです。
設定は、下記のとおりです。
パス
コンピューター\HKEY_CURRENT_USER\Software\Classes\hlpfile\shell\open\command


値 (修正前)
%SystemRoot%\winhlp32.exe %1

値 (修正後)
C:\Tools\WinHelp\winhlp32.exe "%1"
(念のため、引数はダブルクォーテーションでくくっています)


修正前


修正後




説明は、小難しいこと言っているかもしれませんが、
作業は、そこそこ、簡単だったと思います
それでは、ご活用くださいませ。