首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Delphi包文件在注册时的位置

Delphi包文件在注册时的位置
EN

Stack Overflow用户
提问于 2015-10-13 11:37:25
回答 2查看 245关注 0票数 2

我正在尝试将我的新HTML帮助文件添加到Delphi 10西雅图。根据文档,这需要注册您自己的菜单项:

第三方帮助菜单项(Delphi)

我唯一缺少的是如何在运行时确定组件包的安装目录(或者实际上是设计/注册时间),这样我就可以在实践中定义Path\to\your\local\help\file。我的帮助文件将相对于.bpl文件安装,所以我只需要找到该路径。

我能搞清楚的是,也许我应该使用ToolsAPI IOTAPackageServices接口?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-13 12:40:40

您可以通过调用SysUtils.GetModuleName(HInstance)获得包的可执行文件名。

票数 3
EN

Stack Overflow用户

发布于 2015-10-13 14:02:06

我成功地使用了这个版本,这个版本也能工作,但是太复杂了:

代码语言:javascript
复制
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;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33101677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档