firebird データベースと mysql データベースの両方に接続するポータブル アプリケーションを作成しています。Delphi 2010 でアプリケーションを作成し、dbExpress コンポーネントを使用して両方のデータベースに接続しています。SQLconnection コンポーネントは、mysql データベースに dbxmys.dll と libmysql.dll を使用し、firebird データベースに dbxfb.dll と fbclient.dll を使用します。
私の開発用コンピューターでは、dll ファイルを /windows/system/ に移動する必要がありました。これは、正しいファイルを見つけて接続するためのシステム パスが原因だと思います。別のクライアント マシンでこれを試しましたが、dll ファイルが見つからなかったため、ソフトウェアは接続できませんでした。これは移植可能なアプリケーションであるため、dll ファイルを含めるためにアプリケーション ディレクトリのサブディレクトリを含めたくありませんが、mySQL と Firebird をインストールしてパスを正しく設定しなければ、クライアント マシンでアプリケーションを実行できないと思います。
これを行うより良い方法はありますか?サブディレクトリを作成し、アプリケーションがそこを参照するように強制することを検討しました (firebird と mySQL はどこにでもインストールできるため)。しかし、私は本当にこのアプローチをとりたくありません。
直接のデータベース接続、または dll 要件の問題の解決に関する私のオプションは何ですか。私は経験豊富なソフトウェア開発者ではありません。前もって感謝します。
更新: DLL は現在、exe と同じディレクトリにあり、アプリケーションは正常に起動します。私はまだdllを使いたくありません。dll を必要としないコンポーネントをいくつか見つけましたが、支払いも必要です。別の無料オプションを見つけることが理想的です。