Delphi Programming / Object Pascal
サイトのトップページへ リンクのページへ ロゴマーク
[掲載 2008年10月08日] [更新 2018年07月16日] Delphi 一般・その他
   
Windows Vista 以降で HLP 形式ヘルプを使用
動作確認等 Windows Vista 以降
[整理番号 - 338]







Windows Vista 以降で HLP 形式ヘルプを使用


Windows Vista 以降では,Delphi 7 までの,拡張子が .HLP のヘルプは表示できません.
.HLP 形式のヘルプファイルを表示するには,Windowws のバージョンに応じたファイルをマイクロソフトのサイトからダウンロードしてインストールします.
Windows 10 および Windows Server 2012 以降のバージョンの Windows Server では,HLP 形式のヘルプファイル表示用のプログラムはサポートされていません.

もし自分自身がヘルプファイルの提供者である場合,HTML ヘルプ (CHM 形式のヘルプ) に作成し直すことも考える必要があるかも知れません.
ウェブページ用に作成した HTML ファイルを CHM ファイルに変換するソフトがあります.下記のリンクの「ヘルプましん」もその一つで,筆者が一時期,当サイトの記事を CHM ファイルとして提供していた時に利用していたソフトです.「ヘルプましん」は Delphi で開発されています. 新しいウィンドウで開く



[備考]
古い形式の,拡張子が .HLP の WinHelp 形式のヘルプを HTML ヘルプに変換するツールを提供しています.以下のページは,その使用方法を説明した記事です.




旧タイプ ( 拡張子 .HLP ) のヘルプを利用可能にする - Windows 8 以前


Windows 8 以前の場合は以下のプログラムをダウンロードして実行します.
すぐにはダウンロードできませんでした.筆者の環境では,ダウンロードの前に [Genuine Windows Validation (正規 Windows 検証)] の実行メニューが表示されました.

Windows 8.1 用は,次項の記事を参考にしてください.



図1
更新プログラムのダウンロード
  • 今回は 64bit 版の Windows なので赤枠のものをダウンロード
  • 32bit 版の Windows の場合は x86 をダウンロードする
図2
ヘルプを表示




旧タイプ ( 拡張子 .HLP ) のヘルプを利用可能にする - Windows 8.1


Windows 8.1 の場合は,以下の [XXX 用更新プログラム (KB917607)] をダウンロードしてインストールします.最初のリンクが 32 ビット版の Windows 8.1 用,次のリンクが 64 ビット版の Windows 8.1 用となっています.
マイクロソフトでは,同じ名前のファイルを別に提供していますが,2015年08月12日現在,下記のリンクのファイルが最新のものです.古いファイルはリンク先が違います.古いファイルの場合,更新プログラム KB3000850 がインストールされていると動作しない場合があります.





旧タイプ ( 拡張子 .HLP ) のヘルプを利用可能にする - Windows 10


Windows XP 環境を持っている方が対象の方法です.
Windows XP の WinHlp32.exe を Windows 10 で使用可能にする方法を教えて頂きました.Windows XP の WinHlp32.exe は,デフォルトでは [Windows] ディレクトリ内にあります.

  • (1) 作業用のフォルダーを,例えば D:\TEMPZ6 という名前で作成する
  • (2) この D:\TEMPZ6 に,Windows XP の WinHlp32.exe をコピーする
  • (3) テキストエディタで,下のコードのバッチファイル Win10-Hlp32-Fix.cmd を作成する
  • (4) 作成したバッチファイル Win10-Hlp32-Fix.cmd を作業用フォルダ D:\TEMPZ6 内に置く
  • (5) コマンドプロンプトを管理者権限で起動する
  • (6) ディレクトリを作業用フォルダ D:\TEMPZ6 に移動する
  • (7) Win10-Hlp32-Fix.cmd を実行する

作業用のフォルダ名とバッチファイルの名前は任意です.



リスト1
上記の手順で説明したバッチファイル Win10-Hlp32-Fix.cmd のコード
@echo off
set currdir=%CD%
takeown /f "%windir%\winhlp32.exe" >nul
icacls "%windir%\winhlp32.exe" /grant *S-1-5-32-544:F >nul
copy /y "%currdir%\winhlp32.exe" %windir%
icacls "%windir%\winhlp32.exe" /setowner "NT Service\TrustedInstaller" >nul
echo.
echo Done.
echo.
echo Press any key to Exit
pause >nul
exit



[備考 1]
マイクロソフトが Windows Vista, 7, 8, 8.1 用に提供している「Windows Help プログラム」でインストールした WinHlp32.exe を使用しても,.HLP ファイルは表示できません.


[備考 2]
本項の記事掲載時の 2015年10月08日では,Windows 7 で動作確認していました.
2015年11月24日に 32 ビット版と 64 ビット版の Windows 10 で動作確認しています.

上のコードは,WinHlp32.exe をシステムフォルダにコピーしているだけです.システム関係フォルダ内のファイルの操作には所有権の設定,変更が必要なので,その処理を行っています.つまり,上のコードは Windows のバージョンには関係ないコードとなっています.


[備考 3]
システム関係フォルダ内のファイル類は,多くの場合,所有者を Administrarors に変更すれば操作が可能になります.上のリンクの [ファイルの所有者を... ] の記事を参考にしてください.単にファイルのコピーや貼り付け操作をしたり,所有権を正しく設定しないと,次回の Windows 起動時あるいは Windows の UPdate 時に自動修復機能が働き,ファイルが削除されることがあります.


[備考 4]
WinHlp32.exe ファイルは,アプリケーションに組み込んだ形式での配布は可能ですが,単体での配布は許可されていません.





WinHlp32.exe のインストール用プログラム
plWinHlp32Install.zip [915 KB] 2018年07月19日版(EXE のみ.説明なし)
Windows Vista / 7 / 8 / 8.1 / 10 用


上の plWinHlp32Install.zip ファイルは,WinHlp32.exe のインストール用プログラムです.
ダウンロードしたらブロックを解除して解凍展開します.plWinHlp32Install.exe を実行して [インストール] ボタンをクリックします.上書き専用のインストーラです.
インストールすると,拡張子が .HLP のヘルプファイルを表示できるようになります.説明の文書は添付していません.アンインストールの機能は実装していません.必要がなくなったら [Windows] フォルダ直下の WinHlp32.exe を手作業で削除してください.

インストールが終了すれば,plWinHlp32Install.exe もダウンロードしたファイルも必要ありません.削除してください.



[備考]
WinHlp32.exe ファイルを他のコンピュータにコピーして使用できますが,Windows のアップデートで削除されてしまうことがあります.
本インストーラでは,Windows のアップデートで削除されないように,ファイルの所有者の変更等の処理をしています.



図3
[インストール] ボタンをクリックするとインストール開始