Firebird関連スレ3 ..
[2ch|▼Menu]
254:252
11/02/25 03:54:54.18 .net
>>253
えと、エンドユーザじゃなくて開発者ですよね?だったら同梱するdllの名称を決めるのは
自分でしょ?自分の作ったアプリに読ませるdllの名称なんて基本的に自由なんだけど。

経緯を説明すると、gds32.dllというのが当初からの名前。これは前身のInterbaseのさらに
前身のGDSから受けつがれている。過去のクライアントアプリは通常gds32.dllを探すように
プログラミングされているため、互換性のためにFirebirdでもこのファイル名を使っている。

Interbase6とFirebird1.0の時点では相互の互換性があったのでこれで問題なかったが
ところがInterbase7とFirebird1.5あたりから相互の仕様に食い違いが発生してきた。
お互いが仕様の違うものをgds32.dllという同一名称で配布したら上書きしあって
混乱するから、Firebirdはfbclient.dllという別名称を作った。Interbaseはibclient.dll
だったかな。

ただ、既存のアプリはgds32.dllという名称でしか理解しないものが多いのでそういう
アプリのためにサーバ接続用のクライアントにはgds32.dllも同梱されてる。

上記はFirebirdクライアントやサーバのインストーラの話。自分がアプリを作る場合は
何という名前で配布するか決めるのは自分。アプリのインストール環境がどうなっている
のかInterbaseかFirebirdのクライアントがすでにインストールされている可能性がある
のかないのか。ある場合はgds32.dllが2つあって混乱しないか(名称は同じでも機能は違う
のでアプリが誤認すると誤動作する)。そういうことを総合してどういう名称にすべきか
決めればいい。別にoresama.dllでも良いわけだし。

fbembed.dllのまま使えばそういう実行環境での混乱はない。じゃあなぜそれを推奨しないのか。
既存アプリがそれじゃ使えない場合もあるからだ。たとえばIBConsoleは(多分)gds32.dllしか
理解しないし、Delphiのコンポもgds32.dll決め打ちのやつもある。正解は一つじゃない。
だからfbembeded.dllで配布され、必要ならgds32.dllに変えろというわけだ。

これで良いかな?


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

252日前に更新/159 KB
担当:undef