0

このグーグルコードサイトからChee-YangChauによるFirebird用のdbExpressドライバーをダウンロードしました。

Delphi 2010デモプロジェクトをロードして実行しようとすると、すぐにdllをロードできませんでしたというエラーが発生しました。

dbxfb4dl14.dllエラー

INIファイル

[Installed Drivers]
FirebirdConnection=1

[FirebirdConnection] ;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 LibraryName=dbxfb4d14.dll VendorLib=C:\Program Files\Firebird\Firebird_1_5\bin\fbclient.dll BlobSize=-1 CommitRetain=False Database=database.gdb ErrorResourceFile= LocaleCode=0000 Password=masterkey RoleName=RoleName ServerCharSet= SQLDialect=3 Interbase TransIsolation=ReadCommited User_Name=sysdba WaitOnLocks=True Trim Char=False

Delphiコード

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;
iniファイルのライブラリ名dbxfb4d14.dllが実際のdll名dbxfb4d15.dllと一致しないことに気付いたので、dllの名前と一致するようにiniファイルを変更しました。

ここで、dbxfb4d15.dllが見つからないというエラーが表示されます。

dbxfb4d15エラー

私は何が間違っているのですか?

4

1 に答える 1

3

Delphi2010にはd14バージョンが必要です。d15バージョンはXE用です。zipにd15バージョンしかない理由がわかりません。

DLLがDLL検索パスにありません。適切なDLLを入手したら、それがパス上にあることを確認する必要があります。

このコンポーネントを見て回ったので、それがひどく洗練されているとは思いません。余裕があれば、Devartドライバーを強くお勧めします。

于 2011-07-30T22:34:30.957 に答える