not working udf --------------- Key: CORE-5945 URL: http://tracker.firebirdsql.org/browse/CORE-5945 Project: Firebird Core Issue Type: Bug Affects Versions: 3.0.4 Environment: Firebird 3.0.4 Win7 x64 Reporter: andrey
not working udf error message: Invalid token. invalid request BLR at offset 39. function GEN_UUID_SEQUENTIAL is not defined. module name or entrypoint could not be found. source code: library uuid; {declare external function gen_uuid_sequential returns char(16) character set octets free_it entry_point 'gen_uuid_sequential' module_name 'uuid.dll'} function UuidCreateSequential(var guid: TGUID): HResult; stdcall; external 'RPCRT4.dll'; function ib_util_malloc(l: integer): pointer; cdecl; external 'ib_util.dll'; function gen_uuid_sequential: PAnsiChar; cdecl; export; var uid: TGUID; begin Result := ib_util_malloc(16); UuidCreateSequential(uid); Move(uid, Result^, SizeOf(uid)); end; exports gen_uuid_sequential; begin isMultiThread := True; end. checking project code: procedure TForm1.Button1Click(Sender: TObject); type PGuid= ^TGuid; var gen_uuid_sequential: function(): PAnsiChar; LibHandle: THandle; FileName: string; Error: DWORD; g: PGuid; begin FileName:= ExtractFilePath(Application.ExeName) + 'uuid.dll'; @gen_uuid_sequential := nil; LibHandle := SafeLoadLibrary(FileName); if LibHandle >= 32 then begin @gen_uuid_sequential := GetProcAddress(LibHandle, 'gen_uuid_sequential'); if @gen_uuid_sequential <> nil then begin g := PGuid(gen_uuid_sequential()); ShowMessage(GuidToString(g^)); end; end else begin Error:= GetLastError(); ShowMessage('Error: ' + IntToStr(Error)); end; FreeLibrary(LibHandle); end; -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel