如何在Firebird Embedded中访问UDF DLL?

时间:2013-02-06 00:18:33

标签: firebird

我尝试为Firebird构建UDF。我能够编译DLL并向数据库注册UDF,但我实际上无法运行它。每一次,我都会收到错误:

invalid request BLR at offset 63.
function [FUNCTION_NAME] is not defined.
module name or entrypoint could not be found.

我已经尝试将UDF DLL放在与应用程序相同的文件夹中,并且放在与数据库相同的文件夹中,但无论如何它似乎永远不会加载它。

当我尝试Googling寻求帮助时,我得到的所有结果似乎要么通过将它放在服务器的UDF文件夹中来使它在FB服务器上工作(这不适用于我使用FB嵌入式)或通过编辑conf文件在FB服务器上具有修复权限问题(这不适用于我使用FB Embedded)。

那么,如果我使用FB Embedded,如何确定/配置放置UDF DLL 的正确位置?

1 个答案:

答案 0 :(得分:6)

我认为默认情况下,Firebird希望UDF DLL位于名为udf的子目录(相对于fbembed.dll文件)中。 您可以使用firebird.conf参数通过UdfAccess文件配置UDF路径。安装附带的conf文件说明了如何使用该参数。此外,README_embedded.txt文件还包含有关如何放置嵌入式服务器文件的详细说明。