使用 firebird 2.5 时找不到 dbxfb

dbxfb not found when using firebird 2.5

在我的开发机器上,我有 Delphi 10.2 和 Firebird 2.5。我在此配置中创建的数据库应用程序可以正常工作。

我将一个程序及其数据库复制到另一台计算机上运行 Windows 10. 我安装了 Firebird;我还在这台计算机上为 InterBase/Firebird 安装了 SQL Manager Lite,这个程序能够打开数据库并查看其中包含的数据。但是我的Delphi程序打不开数据库,显示错误信息'Unable to load dbxfb.dll (error code 193). It may be missing from the system path'.

我已经把dbxfb.dll复制到所有我能想到的位置(程序所在的目录,数据库所在的目录,windows\system32,C:\Program文件 (x86)\Firebird 等),但消息保持不变。在我的开发机器上,我认为是路径(即系统 properties\advanced\environment 变量)仅包含目录 %USERPROFILE%\AppData\Local\Microsoft\WindowsApps。在另一台电脑上,我添加了 C:\Program Files (x86)\Firebird 但没有用。

那么 dbxfb.dll 应该放在哪里,或者我如何“告诉”我的程序在哪里找到它?

编辑:关于'bitness',两台电脑都是64位的。在Delphi中的Project Options对话框中,只有32位的选项。我已将程序的兼容性设置设置为 Windows 8,但这对丢失的 dll 没有影响。

进一步编辑:is/was 在目标机器上的版本大小为 1,412kb,日期为 13/11/2015 1:55;这个版本显然来自 C:\Program Files (x86)\Embarcadero\Studio.0\bin64,所以这绝对是错误的版本。

在C:\Program Files (x86)\Embarcadero\Studio.0\bin中,有一个版本大小只有278kb,日期相同,时间相同06:55。将较小的文件复制到目标机器和 运行 程序现在给出不同的错误消息:i/o 文件“@2”的“@1”操作期间出错。尝试打开文件时出错。

https://docs.microsoft.com/en-us/windows/win32/debug/system-error-codes--0-499-

ERROR_BAD_EXE_FORMAT

193 (0xC1)

%1 is not a valid Win32 application.

确实是Mark所说的位数问题