2016-07-06 5 views
3

アプリケーションと一緒に.hlpファイルがあります。
私は最後にアプリケーションを書いてから機能が変わっていないので、hlp(2003年に書いた)はまだ有効です。
しかし、私がDelphi XE7でアプリケーションをコンパイルすると、アプリケーションにhlpファイルを認識させることができません。アプリケーションで状況依存ヘルプにhlpファイルを使用するにはどうすればよいですか?

私が持っている.DPRファイルで

begin 
    Application.Initialize; 
    Application.HelpFile := 'Life32.hlp'; 
    Application.Run; 
    //sometimes the application hung here, due to OLE issues 
    //exitprocess prevents that. 
    ExitProcess(0); 
end. 

私は

procedure TProgCorner.Button2Click(Sender: TObject); 
begin 
    Application.HelpContext(4); 
end; 

を行うと、私は$ 75EEB9BCで

最初のチャンス例外を取得します。例外クラスEHelpSystemExceptionに '状況依存ヘルプがインストールされていません'というメッセージがあります。

helpfileは、exename.hlpに設定されています。
エクスプローラで.hlpファイルを手動でダブルクリックすると、hlpファイルが正常に開きます。

呼び出されたときにhlpファイルを開くようにするにはどうすればよいですか?

答えて

4

WinHelpシステムをインストールするには、プロジェクトにVcl.WinHelpViewerユニットを含める必要があります。

WinHelpのサポートがXP以降で終了したことに注意してください.WinHelpコンポーネントは別途インストールする必要があります。

+0

'それ以降のバージョンではWinHelpコンポーネントをインストールする必要がありますMSとは別のダウンロードファイルとしてWindowsにインストールしますか?または、Delphi IDEにインストールされていますか?私のW7システムでは、それはちょうど箱の中で働いたので私は知らない。 BTW WinHelpViewerと次の修正により、問題が修正されました: 'Application.HelpFile:= ExtractFilePath(Application.ExeName)+ 'Life32.hlp';' – Johan

+0

ideと何も関係ありません。そのMSからのダウンロード。既にWin7ボックスにインストール済みです。 –

+3

Win10にwinhelpをインストールする変更されたインストールスクリプトがあります。 http://answers.microsoft.com/en-us/windows/forum/apps_windows_10-winapps/winhlp32exe-on-windows-10/91e3366d-cc49-4e6d-b783-9d72b18f2947?auth=1を参照してください。名前 'Bahampour' – MartynA

関連する問題