[pgsql-jp: 40872] 8.4のlibpqについて

小沢 和也 (Kazuya Ozawa) ozawa @ nippa.co.jp
2011年 8月 2日 (火) 09:31:45 JST


お世話になります。小沢と申します。

以前8.0でlibpq.dllを使ったクライアントアプリケーション(MFC)を
VC++で作成した事があり、今回8.4で同じようなものを
作成していたのですが、そこで問題が起こりました。

8.4にあるlibpq-fe.hとpostgres_ext.hをインクルードし、
libpq.libをリンカ入力してlibpq.dllを使うアプリを作成したのですが、
PostgresがインストールされていないPCでこのアプリを
実行すると、DLLが足りないために実行できないという
エラーが出ます。(最初はssleay32.dllが無いと言われる)
結局、binフォルダにあるすべてのDLLをコピーする事で
アプリは動きましたが、これはこういうものなのでしょうか。
8.0の時はlibpq.dllだけあればクライアントで動作したのですが・・・

アプリはスタティックライブラリでMFCを使用するようにしてます。
PostgresがインストールされているPC上ではエラーなく動きます。

この件に関する情報や解決策をお持ちの方は、
ぜひご教授いただきたいと思います。

環境:Posgres8.4 Windows Vista SP1 Visual Studio 2005 VC++
Windows Vista(クライアントPC)


よろしくお願いいたします。 



pgsql-jp メーリングリストの案内