【发布时间】:2011-07-30 20:30:07
【问题描述】:
我刚刚从 google code site 下载了 Chee-Yang Chau 的 dbExpress Driver for Firebird。
我加载了 Delphi 2010 演示项目并尝试运行它并立即收到无法加载 dll 错误:
INI 文件
[Installed Drivers]
FirebirdConnection=1
[火鸟连接] ;DriverUnit=DBXInterBase ;DriverPackageLoader=TDBXDynalinkDriverLoader,DbxCommonDriver120.bpl ;DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxCommonDriver,Version=12.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b ;MetaDataPackageLoader=TDBXInterbaseMetaDataCommandFactory,DbxInterBaseDriver120.bpl ;MetaDataAssemblyLoader=Borland.Data.TDBXInterbaseMetaDataCommandFactory,Borland.Data.DbxInterBaseDriver,Version=12.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b GetDriverFunc=getSQLDriverFIREBIRD 库名=dbxfb4d14.dll VendorLib=C:\Program Files\Firebird\Firebird_1_5\bin\fbclient.dll BlobSize=-1 提交保留=假 数据库=数据库.gdb 错误资源文件= 区域代码=0000 密码=主密钥 角色名=角色名 服务器字符集= SQL方言=3 Interbase TransIsolation=ReadCommited 用户名=sysdba WaitOnLocks=真 Trim Char=False
德尔福代码
我注意到 ini 文件中的库名称 dbxfb4d14.dll 与实际的 dll 名称 dbxfb4d15.dll 不匹配,因此我修改了 ini 文件,使其与dll。procedure TMainForm.Button1Click(Sender: TObject);
var C: TSQLConnection;
begin
C := TSQLConnection.Create(Self);
try
C.DriverName := 'FirebirdConnection';
// C.LibraryName := 'dbxufb40.dll';
// C.VendorLib := 'C:\Program Files\Firebird\Firebird_1_5\bin\fbclient.dll';
// C.GetDriverFunc := 'getSQLDriverFIREBIRD';
C.Params.Add('User_Name=SYSDBA');
C.Params.Add('Password=masterkey');
C.Params.Add('Database=localhost:%ProgramFiles%\Firebird\Firebird_1_5\examples\employee.fdb');
C.Open;
if C.Connected then
ShowMessage('Connection is active')
finally
C.Free;
end;
end;
现在我收到一条错误消息,提示找不到 dbxfb4d15.dll。
我做错了什么?
【问题讨论】:
标签: delphi delphi-2010 firebird dbexpress