将Delphi 2007升级到XE6 - Type库编辑器在哪里?

时间:2014-10-15 08:08:26

标签: delphi delphi-2007 delphi-xe6

这可能是我正在做的事情,但是我已经从2007升级到XE6 / 7而且我似乎无法在新版本中找到Type库编辑器。

我理解TLB格式在以后的版本中有所改变,我有Myproject_TLB.pas样式文件,编译好但我无法更改它们。

帮助文件似乎暗示库编辑器仍在那里,但我找不到一种方法来实现它,“View / TYpe Library”选项显示为灰色。

有人能指出我正确的方向,我需要添加更多属性,帮助文件没用。

1 个答案:

答案 0 :(得分:3)

类型库编辑器仍然存在,但现在是RIDL文件类型的嵌入式编辑器。根据David的评论,IDE现在使用此RIDL文件格式作为类型库的存储格式,而不是TLB文件。

当您在XE6 + IDE中打开RIDL文件时,您会发现一个非常熟悉的编辑器界面 - 基本上是类型库编辑器。但是,除了文字标签旁边的属性使用标志等,而不是顶部,它是现在通过底部标签条到达。 RIDL(文本)视图显示在代码标签中,而类型库编辑器样式视图由设计标签显示。

您需要做的就是将D2007项目中的TLB文件转换为RIDL格式,并将这些RIDL文件添加到XE6 +项目中。 TLB文件将根据IDE的需要从这些RIDL文件生成,类似于从RC资源脚本生成二进制RES文件的方式。

旧的类型库编辑器也支持这种RIDL格式,因此将旧的TLB文件转换为RIDL的一种方法可能是:

  • 在D2007 IDE类型库编辑器中打开TLB文件
  • 选择层次结构中的库根节点
  • 切换到“文本”标签
  • 选择整个内容
  • 复制/粘贴到文本编辑器中并另存为文件 RIDL扩展
  • 将该RIDL文件添加到您的XE6 +项目

然后,您可以选择通过直接编辑RIDL或使用设计界面来修改类型库,这可能对您来说更为熟悉。无论您选择哪个选项,它现在都是RIDL文件,应该添加到您的版本控件中,不是 TLB。

如果您没有可用的旧IDE,或者您只是喜欢,可以使用Delphi提供的命令行实用程序进行转换:

tlibimp -I foo.tlb

将为指定的 foo.tlb 输入文件创建 foo.ridl 文件。请注意, tlibimp 的旧版本不支持此形式的-I选项,但 Delphi 2010 及更高版本提供的版本应支持此形式。

如果您在“我”选项后收到标记为“+”或“ - ”的错误,那么您运行的是旧版 tlibimp ,可能是在你的道路。