Delphi:你能在DLL中有一个组件类定义,并在运行时加载并创建它吗?

Kie*_*ran 4 delphi dll components

对不起,如果这是一个愚蠢的问题,但这不是我以前必须做的事情.

是否可以在DLL中创建一个组件类,比如TPanel或TDBGrid的后代,然后在运行时将该DLL加载到另一个应用程序中,然后创建这些控件并像普通的Delphi组件一样使用它们?

如果是这样,你可以给我任何指示,看看从哪里开始这样做?

Uli*_*rdt 7

这就是包的目的.它们是一种经过改进的DLL,可以很好地与Delphi类(包括组件)配合使用.

请记住,您需要在可执行文件和DLL旁边分发RTL [ver] .bpl,VCL [ver] .bpl和任何其他必需的运行时软件包.

理想情况下,您应该在从未安装过Delphi/RAD Studio的VM或系统上测试您的应用程序.这样,如果您的发行版缺少任何必需的Package文件,Execption对话框将告诉您需要包含哪些文件.

  • 是的,使用[LoadPackage](http://docwiki.embarcadero.com/Libraries/en/System.SysUtils.LoadPackage). (4认同)