【发布时间】:2012-07-22 15:52:42
【问题描述】:
我现在没有使用 dll 的经验。 我的应用程序由几个程序组成,这些程序有几个表格和单元。现在我想把它们都“放在一起”。 这意味着,我希望有一个登录名,可以从 dll 中调用这些单独的程序。
由于程序本身有多个单元,我的问题是,是否可以将多个表单/单元放入一个 DLL 中。 (一个完整的程序) 然后我可以将程序称为 dll。
到目前为止,程序是分开运行的,它们之间没有依赖关系。在它们内部有级联表单(Form1 调用 Form2 或 form3 或 ...)。 如果无法将它们全部放在一个 dll 中,我可以级联 dll(即调用 dll 1 dll1 调用 dll 2)吗?
我通过 IBDac 使用 Delphi 2007 / XE 和 Firebird 2.x
TIA
【问题讨论】:
-
考虑使用
bpl包而不是 dll。您还可以使用您的组件创建设计时包并将它们安装到您的 IDE 中。在此处阅读有关 bpls 的更多信息:edn.embarcadero.com/article/27178 -
据我所知,bpl 和 dll(在 delphi 世界中)在某种意义上是可以互换的,在决定使用它们中的哪一个之后,我可以对它们做同样的事情吗? (其他语言的调用函数除外)
-
您不需要 DLL。只需将所有代码包含在一个程序中即可。
-
好吧,DLL 和 EXE 中的 TObject 将是两个不同的类。所有“as”和“is”运算符都将不起作用。没有类型安全。制作函数Somefunction(参数:字符串):TObject;并将其称为 var-string := SomeFunction (2+2, 3.5 + 3.5, Tform)。容易地。任何随机结果。如果您不太了解汇编程序,无法理解 DLL 和 BPL 之间的区别,那么请不要使用 DLL。