如果你有一个Delphi项目,并想添加一个类型库,你可以很容易。如何在Delphi项目中使用多个类型库?
但是,我们希望能够添加多个不同类型的库。德尔福XE IDE似乎迫使你有一个名为
MyProject.tlb
我希望能有多种类型库在我们的主要项目,并做COM插件,不过我还是要说有且仅有一个类型库不需要一个单一类型的库,而是需要多种不同类型的插件的类型库。
这是可行的吗?它只是执行“只能有一个TLB”规则的IDE吗?
如果你有一个Delphi项目,并想添加一个类型库,你可以很容易。如何在Delphi项目中使用多个类型库?
但是,我们希望能够添加多个不同类型的库。德尔福XE IDE似乎迫使你有一个名为
MyProject.tlb
我希望能有多种类型库在我们的主要项目,并做COM插件,不过我还是要说有且仅有一个类型库不需要一个单一类型的库,而是需要多种不同类型的插件的类型库。
这是可行的吗?它只是执行“只能有一个TLB”规则的IDE吗?
AFAIK,IDE不支持项目中的多个TypeLibraries。但是,您可以执行的操作是创建单独的外部TypeLibraries(文件>新建>其他> Delphi项目>活动>类型库)以创建独立的.tlb文件,将其注册到操作系统,然后在需要时在项目的TypeLibrary中引用它们。
但是,如果您所做的只是创建您的主项目使用的COM插件,则无需在主项目中包含COM插件TypeLibraries。所有你需要的是接口定义。只需将生成的<UnitName>_TLB.pas
单元添加到您的主项目的uses
条款中。不要将实际的.tlb文件本身添加到您的主项目中。
你当然可以。类型库仅作为二进制文件最终编译中的另一个资源。
这听起来像你的IDE限制你到一个类型的库。如果您可以编辑原始.RC文件,您可以在其中包含对.tlb的引用。
E.G ...从.RC文件的TEXTINCLUDE部分。
3 TEXTINCLUDE
BEGIN
"1 TYPELIB ""junk.tlb""\r\n"
"\0"
END
4 TEXTINCLUDE
BEGIN
"2 TYPELIB ""junk2.tlb""\r\n"
"\0"
END
资源编译器应该将其作为第二个TYPELIB资源包含它。我只是手工完成这个工作,我没有使用Visual Studio提供的支持。
一旦我编译了我的EXE,我打开它并查看资源。有两个类型的库。
我希望这有助于。