名前 題名 ▼ sakiyamaさん > ▼ Syakeさん > > > 一つだけコネクションを張るコネクションプールDLLを作り、 > > > 他DLLはそれを参照するのはどうでしょうか。 > > うっ!、これは良く判りません。 > > 一体どういうことでしょうか? > > たとえば、今のように全部のDLLがデータモジュールを > 持つのではなく、ADO接続をするDLLを一個作ってそこから > ConnectionObjectを取得してって感じです。 > --adoconn.dpr(dll) > var > dm: TDataModule1; > procedure GetConnection(out Connection:IUnknown); > begin > if dm = nil then > dm := TDataModule1.Create(nil); > > if not dm.ADOConnection1.Connected then > dm.ADOConnection1.Open; > dm.ADOConnection1.ConnectionObject.QueryInterface(IUnknown, Connection); > end; > > --unit1.pas > procedure GetConnection(out Connection: IUnknown); external 'adoconn.dll' name 'GetConnection'; > > procedure TForm1.Button1Click(Sender: TObject); > var > conn: IUnknown; > begin > GetConnection(conn); > if conn = nil then Exit; > //これでDetaControlが使える > ADOConnection1.ConnectionObject := conn as _Connection; > ADOTable1.Active := True; > end; > > 実行時パッケージでよければもっと楽かも。 > > > > Delphiから使うならFirebird楽ですよ。 > > よく聞きますね。 > > 以前挑戦しようと思いましたが(InterBaseの頃) > > あまり、情報があまり無くて(有っても英語(^_^;)) > > 諦めました。 > > 今では、「Firebird日本ユーザー会」が一番情報 > > 量が多いのかな。 > > > > Firebird情報は > http://nekomimi.s41.xrea.com/x/firebird/pukiwiki/ > が詳しいですね。 GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link