3

我正在尝试将 CHM 帮助文件实现到我用 C++ Builder 编写的应用程序中,但我总是得到“没有安装上下文相关的帮助”。

我添加了这些行:

#include "HtmlHelpViewer.hpp"

OnCreate.. (Form1)

Application->HelpFile = ExtractFilePath(Application->ExeName) + "myfile.chm";

我已经通过对象检查器设置了 HelpContext 并且还尝试手动调用

Application->HelpContext(170);

但是,它不起作用。该怎么办?

4

1 回答 1

4

您需要强制链接器包含代码。仅仅包含头文件是不够的。

尝试将此添加到您的代码中:

#include "HTMLHelpViewer.hpp"
#pragma package(smart_init)
#pragma link "HTMLHelpViewer"

我假设您不需要添加Vcl单位范围名称,因为您没有在问题的代码中这样做。但如果您确实需要这样做,代码将如下所示:

#include "Vcl.HTMLHelpViewer.hpp"
#pragma package(smart_init)
#pragma link "Vcl.HTMLHelpViewer"

从您的评论和这个Embarcadero 论坛主题来看,我怀疑您使用的版本需要单位范围名称。您可能已经指定了单元范围别名,这意味着您可以在头文件中省略单元范围名称#include。但似乎您不能在#pragma link指令中省略单位范围名称。

于 2013-04-23T11:21:59.407 回答