4

Delphi - 如何在 Delphi XE 应用程序中使用 CHM HTML 帮助文件?

http://edn.embarcadero.com/article/27842文章介绍了如何使用 CHM 文件。我做了那里描述的所有步骤。

添加

const
  HH_DISPLAY_TOPIC        = $0000;
  HH_DISPLAY_TOC          = $0001;
  HH_CLOSE_ALL            = $0012;

function HtmlHelp(hwndCaller: HWND;
  pszFile: PChar; uCommand: UINT;
  dwData: DWORD): HWND; stdcall;
  external 'HHCTRL.OCX' name 'HtmlHelpA';

和公共功能 HH`

function TForm1.HH(Command: Word; Data: Integer;
  var CallHelp: Boolean): Boolean;
begin
  if (Command = 0) and (Data = 0) then
      HtmlHelp(Application.Handle,
        PChar(Application.HelpFile),
        HH_DISPLAY_TOC, 0);

  CallHelp := False;
end;

在窗体创建

  HelpDir:=ExtractFilePath(Application.EXEName);
  Application.HelpFile:=HelpDir+'Sample.chm';
  Application.OnHelp := HH;

在 button1 的 OnClick 事件上添加了以下代码:

HH(0, 0, dummy);

点击button1后,光标会暂时变成沙漏,仅此而已。

我做错了什么?

以及如何从 DelphiXE 应用程序中使用 CHM 帮助文件?

4

1 回答 1

9

您正在处理的文章早于内置对 HTML 帮助的支持。这些天,您执行以下操作:

  • HtmlHelpViewer至少包含在您的一个使用条款中。
  • 设置Application.HelpFile为帮助文件的路径。

就是这样。应该删除您问题中的代码。内置的帮助查看器会处理所有这些细节。

于 2014-02-03T18:40:05.390 回答