我正在尝试将新的HTML帮助文件添加到Delphi 10 Seattle。这需要根据文档注册您自己的菜单项:
Third-Party Help Menu Item (Delphi)
我唯一缺少的是如何在运行时(或实际设计/注册时间)确定组件包的安装目录,以便我可以在实践中定义Path\to\your\local\help\file
。我的帮助文件将相对于.bpl文件安装,所以我只需要找到那条路径。
我能弄清楚的是我应该使用ToolsAPI IOTAPackageServices
界面吗?
答案 0 :(得分:3)
您可以致电SysUtils.GetModuleName(HInstance)
来获取您的包的可执行文件名。
答案 1 :(得分:1)
我设法使用了这个版本,这个版本也有效,但是太复杂了:
var
PackageServices: IOTAPackageServices;
I: Integer;
Package: IOTAPackageInfo;
...
if Supports(BorlandIDEServices, IOTAPackageServices, PackageServices) then
begin
I := 0;
while True do
try
Package := PackageServices.Package[I];
if Package = nil then
break;
if StartsStr('MyProduct', Package.Name) then
begin
// The help file is on the "side" directory of the package
HelpFilePath := ExtractFilePath(Package.FileName) + '..\Help\MyProduct.chm';
end;
Inc(I);
except
break;
end;
end;