代码之家  ›  专栏  ›  技术社区  ›  Cary Jensen

如何从Delphi的开放工具API中检索新的单元名?

  •  6
  • Cary Jensen  · 技术社区  · 15 年前

    我用DelphiXE编写了一个向导,它运行良好。但是,我还没有弄清楚如何访问Delphi的OTA可以创建的生成的默认单元名(或表单名或项目名)。

    在我的旧样式向导中,我可以调用toolservices.getNewModuleName来发现生成关联源文件时可以使用的可用单元和表单名称。在今天的开放工具API中,什么是等效的?

    根据toolsapi单元注释,我应该从iotamoduleCreator.getImplFileName方法返回一个空白,让delphi生成文件名。我将从这个方法返回一个空字符串,但仍然看不到在哪里可以访问Delphi生成的文件名。

    3 回复  |  直到 15 年前
        1
  •  4
  •   Marco Cantù    15 年前

    有一种获取新表单和单位名称的特定方法:

    (作为iotamoduleservices的borlandieswordices).getnewmoduleandclassname( “,UnitIdent,FormName,文件名);

    我用过几个例子,看起来效果不错。

        2
  •  2
  •   Henri Gourvest    15 年前

    iotamoduleCreator.newImplsource方法有一个“moduleIdent”参数,它是单元名。

        3
  •  2
  •   Ondrej Kelle    15 年前

    在我的测试中,它按你的预期工作( ModuleIdent 中的参数 NewImplSource 方法接收新的单元名称)。再次检查您的实现,特别是确保:

    • IOTACreator.GetUnnamed 返回true
    • IOTACreator.GetExisting 返回false
    • IOTACreator.GetCreatorType 返回适当的标识符( sUnit , sForm 等等)-我不确定,但这可能也很重要。

    Here 是一个很好的例子。我刚刚检查了它,代码在DelphiXE中仍然像预期的那样工作。

    推荐文章