Delphi 7 「FISH FACTS」サンプル(BDE)を Delphi XE8 (FireDAC) に移行
Delphi 7 の BDE ベース「おさかな」デモアプリを FireDAC ベースの Delphi XE8 アプリに変換手順メモ
入力となる BDE ベースアプリ
Delphi 7 をインストールすると入手できる以下のフォルダをコピーして 別ディレクトリに配置します。
C:\Program Files (x86)\Borland\Delphi7\Demos\Db\FishFact
ちなみに、Delphi XE8 で、これをこのままプロジェクトとして読み込むと以下のようなエラーになります。「fishfact.dpr」を開くと...
クラス TTable が見つかりません。エラーを無視して続行しますか? 注意:エラーを無視すると,コンポーネントまたはプロパティが失われる可能性があります。
無視したうえで、この変更は保存せずに XE8 は終了してください。
なお、これを回避するためには BDE を別途入手の上インストールすることになりますが、ここで示す手順は、BDE に依存せずに一気に変換していくための手順です。
reFind ユーティリティによる BDE → FireDAC 変換
reFind ユーティリティをもちいて、ソースコードの BDE 記述を FireDAC 記述に変換します。
"C:\Program Files (x86)\Embarcadero\Studio\16.0\bin\reFind.exe" *.pas *.dfm *.fmx /X:"C:\Users\Public\Documents\Embarcadero\Studio\16.0\Samples\Object Pascal\Database\FireDAC\Tool\reFind\BDE2FDMigration\FireDAC_Migrate_BDE.txt"
変換がうまく行くと、コマンドラインに以下の出力が表示されます。
Processing [.\Ffactwin.dfm] Modified. Processing [.\Ffactwin.pas] Modified.
Delphi XE8 でプロジェクトを開く
それでは、変換後のプロジェクト「fishfact.dproj」を開きます。初回には、「FireDAC ログイン」というダイアログが表示されて以下のようなメッセージが表示されます。
「資格情報を入力してください」
ここはキャンセルで通過してください。ひきつづき以下のようなエラーダイアログが表示されますが、ここでは無視します。
[FireDAC][Comp][CInt]-506. 接続 [DBDEMOS] の確立がキャンセルされました.
FireDAC 用コンポーネントの追加
以下のコンポーネントを所定の箇所 (BDEデータベース処理をおこなっていたところ) 追加します。
- TFDConnection
- TFDGUIxWaitCursor
- TFDPhysIBDriverLink
FDConnection1 コンポーネントのプロパティ変更
FDConnection1 の以下のプロパティを変更します。
- DriverName: IBLite
続けて、FDConnection1 をダブルクリックします。そして、以下のように設定します。
- Database: C:\Users\Public\Documents\Embarcadero\Studio\16.0\Samples\Data\dbdemos.gdb
- User_Name: sysdba
- Password: masterkey
それでは、設定した値が正しいかどうか確認するためにテストをおこないます。「テスト(T)」をクリックします。以下のようなメッセージが表示されたら設定成功です。「OK」を押してください。
接続の確立が成功しました。
コンパイル・ビルド・デプロイ・実行
それでは実行しましょう。
一覧に戻る
コンテンツ・メタ情報
- キーワード: Delphi, RAD Studio, XE8, #Embt, #Delphi, #RADStudio, @ToshikiIga
- 更新情報
- 2015/05/27 新規公開