在 Pascalscript 中注册 DLL 函数

Registering DLL-Functions in Pascalscript


我正在考虑一种插件系统来扩展脚本功能
而无需重新编译应用程序。

我的想法是,在启动过程中,程序会扫描一个文件夹并注册
所有找到的 DLL。
(每个 DLL 公开一个函数)。

由于不知道在哪个 DLL 中定义了一个函数,我不能使用
函数FindWindow(c1, c2: PChar): Cardinal;外部 'FindWindow@user32.dll stdcall';
这是 PascalScript 示例之一。

有人知道如何实现吗?

你好 - 克劳斯

插件 DLL 的典型方法是每个 DLL 导出相同函数名称。然后宿主程序知道在加载时调用什么函数。

例如,在您的情况下,您的应用程序可以将该函数传递给 Pascal 脚本解释器的引用,然后 DLL 可以使用它来注册 DLL 提供的任何脚本函数。