XE6のデータエクスプローラからInterBase XE3 Developerに接続できない

提供: Support
移動先: 案内検索

問題

RAD Studio/C++Builder/Delphi XE6のデータエクスプローラからInterBase XE3 Developerへ接続しようとすると、以下のようなエラーが発生し、接続できないことがあります。

Thumb03000041ujpn.png
図1: データエクスプローラ(FireDAC)


Thumb03000042ujpn.png
図2: データエクスプローラ(dbExpress)

原因

環境変数PATH内にInterBaseの旧バージョンのクライアントドライバ(gds32.dll)を含むパスがあり、それがInterBase XE3のgds32.dllよりも先に参照されていると、XE6のIDE(Windowsの実行プログラム)はInterBaseの旧バージョンのgds32.dllをロードするため、バージョン間の互換性の問題で、InterBase XE3へ接続できません。

例えば、FireDACでロードしているInterBaseのクライアントドライバ(gds32.dll)のパスとバージョンを確認する方法は、TFDConnectionをフォーム上に配置し、接続パラメータを設定した後、[情報]タブを選択してください。

Thumb03000043ujpn.jpg

解決

InterBaseの旧バージョンのgds32.dllよりも先に、InterBase XE3のgds32.dllが参照されるように環境変数PATHの順序を変更する必要があります。環境変数PATHを変更する簡単な手順は、以下の通りです。

  1. [コントロールパネル]-[システム]-[システムの詳細設定]を選択
  2. [環境変数]ボタンをクリックし、システム環境変数の変数 Pathの先頭に以下のパスを追加
    Windows 32ビットOS:
    C:\Program Files\Embarcadero\Studio\14.0\InterBaseXE3\bin
    Windows 64ビットOS:
    C:\Program Files (x86)\Embarcadero\Studio\14.0\InterBaseXE3\bin
  3. [OK]ボタンを押して、システム設定を保存
  4. XE6を再起動

本件は、XE6以前のバージョンをご利用のケースでも同様の症状が発生することがあります。その場合は、環境変数Pathに追加するInterBaseのパスを変更してください。