如何从Delphi 7程序中的chm文件中调用帮助?
Application.HelpFile := 'd:\help.chm';
Application.HelpCommand(HELP_CONTEXT, 10);
结果是
为什么我不能从这个程序中获得帮助?
此程序的帮助是以Windows帮助格式创建的 取决于此版本的Windows中未包含的功能。 但是,您可以下载允许您查看帮助的程序 以Windows帮助格式创建。
有关详细信息,请访问Microsoft帮助和支持网站。
答案 0 :(得分:6)
问题在于,默认情况下,Delphi 7假定帮助文件使用Vista未附带的旧WinHelp格式。即使您的帮助文件具有.chm扩展名,Delphi也会尝试使用WinHelp命令显示它。由于WinHelp不存在,您将收到您报告的错误消息。
有多种方法可以让帮助系统显示HTML帮助。例如,常见的技术是为OnHelp
对象实现Application
处理程序,并将帮助路由到HtmlHelp
API的调用。我在recent answer中给出了一个非常简单的例子。
答案 1 :(得分:0)
要打开CHM文件,请使用以下代码:
ShellExecute(Handle, 'open', PChar(ExtractFilePath(Application.ExeName) + 'help.chm'), nil, nil, SW_SHOW);