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

如何在Delphi XE应用程序中使用CHM HTML帮助文件?,delphi,delphi-xe,chm,html-help,Delphi,Delphi Xe,Chm,Html Help,Delphi-如何在Delphi XE应用程序中使用CHM HTML帮助文件 本文介绍如何使用CHM文件。 我完成了上面描述的所有步骤 增加 公共职能` function TForm1.HH(Command: Word; Data: Integer; var CallHelp: Boolean): Boolean; begin if (Command = 0) and (Data = 0) then HtmlHelp(Application.Handle, P

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

本文介绍如何使用CHM文件。 我完成了上面描述的所有步骤

增加

公共职能`

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);
单击按钮1后,光标会变成沙漏一段时间,仅此而已

我做错了什么


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

这篇文章介绍了您使用的HTML帮助内置支持的早期版本。现在,您可以执行以下操作:

  • 在至少一个uses子句中包含
    HtmlHelpViewer
  • Application.HelpFile
    设置为帮助文件的路径

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

你不只是在uses子句中添加HtmlHelpViewer吗?应该是这样。HTMLHelpViewer在我的uses子句中,所以这不是原因。如果你使用它,你就不需要其他任何东西了。我已经创建了一个帮助测试项目。它在那里工作。但它在我的主要项目中不起作用((,这是一个MDI应用程序。很明显,您的项目中出现了一些错误。无法从这里判断原因。
包括HtmlHelpViewer
设置应用程序。HelpFile
,就像奇迹一样,一切都会自行进行。OP已通知您
HtmlHelpViewer在我的uses子句中,因此这不是原因。
您也可以清楚地看到看到他使用的
Application.HelpFile:=HelpDir+'Sample.chm';
了吗?你的答案和往常一样立即得到了2票的支持。但是帮不上忙。这很遗憾。@moskito我不理解你的评论
HH(0, 0, dummy);