サーバーへ共有接続するには?

解決


MaWi  2005-11-29 04:17:07  No: 18918

現在
TADOConnectionを利用してデータベースに接続させます。

そして
この接続を複数のアプリケーションで共有したいと考えています。

つまり
あるアプリから他アプリを介してデータベースにアクセスしたいのです。

いろいろ探したのですが方向性すら見つかりませんでした。
もしそうした方法が可能であれば教えてください、宜しくお願いします。

TADOConnectionでなくても良いです。


えーと  2005-11-29 06:34:08  No: 18919

http://hpcgi2.nifty.com/Mr_XRAY/DelphiBBS/cyclamen.cgi?tree=s260#286


MaWi  2005-11-30 03:58:57  No: 18920

えーとさんありがとうございました。
無事に解決しました。
他のコンポーネントでも試したのですが
dbExpressの場合TSQLConnectionを使用するのだと思うのですが

ADOConnection1.ConnectionObject := conn as _Connection;

の部分の変更方法がわかりませんでした。

引き続き、教えてください、宜しくお願いします。

ソースはこんな感じです。

//////////DLLの内容//////////////////////////////////////////
DBConnectA.dpr(dll)
(省略)
var
  dm: TDataModule1;
procedure GetConnection(out Connection:IUnknown);
begin
  if dm = nil then
    dm := TDataModule1.Create(nil);

  if not dm.SQLConnection1.Connected then
    dm.SQLConnection1.Open;
  dm.SQLConnection1.ComObject.QueryInterface(IUnknown, Connection);
end;
////////////////////////////////////////////////////////////

///////////EXEの内容///////////////////////////////////////
unit1.pas
(省略)
procedure GetConnection(out Connection: IUnknown); external 'DBConnectA.dll' name 'GetConnection';

procedure TForm1.Button1Click(Sender: TObject);
var
  conn: IUnknown;
begin
  GetConnection(conn);
  if conn = nil then Exit;

  {XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}
  {ここでSelf.SQLConnection1にconnの情報を渡したいのです。}
  {XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX}

  SQLClientDataset1.Open;
end;
///////////////////////////////////////////////////////////


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加