Postgresql with Zeos: libpq在win764上找不到或无法加载



我在win7 64上安装了PostgreSQL 9.2,可以使用dbexpress从delphi IDE连接到ODBC,没有问题。当我尝试使用Zeos连接时,尽管我已经提供了libpq.dll的路径,但我仍然得到错误(libpq未找到或不可加载)。我通过谷歌搜索找到了所有的解决方案,但到目前为止,我还没有找到一个有效的解决方案。我已经把dll,后来所有的dll放入system32,甚至看看这是否是需要的。

这是我的设置:

Delphi XE3zeo 7PostgreSQL 9.2windows 7 64

是否有人使用这个系统,可以连接到postgresql 9.2与零?如果是这样,我错过了什么?

我的问题用一句话概括就是:

在win7 64上连接zeos 7和delphi上的postgresql的工作配置/步骤是什么?

非常感谢你的回答!!

确保libpq.dll中有以下文件:Libeay32.dll、libiconv.dll、ssleay32.dll、libintl.dll、libxml2.dll、和libxslt.dll。这些是lipq.dll所依赖的库文件。Delphi IDE是32位的,所以如果你想在设计时连接到postgresql,你只能使用上述库的32位版本。如果你的项目是64位的,你可以得到上述文件的64位版本,并将其放在项目根目录下的单独文件夹中,然后在运行时更改ZConnection的libpq.dll路径以指向该文件夹。

你确定你的ZeosLib是x64吗?构建组件时,请确保选择64位Windows作为目标平台。

很可能发生问题的计算机缺少Microsoft Visual c++ 2010 Redistributable x64。我建议你从微软下载并安装它,然后再运行另一个测试。

我也遇到了同样的问题。为了解决这个问题,我不得不将delphi应用程序的工作目录更改为libpq.dll的路径,否则它将无法找到它需要的其他库。也许你想在打开第一个连接到postgresql之前做一些类似的事情:

OldPath := ExtractFilePath(Application.ExeName);
ChDir('c:pathtolibpqdll');
ZConnection.Connect;
ChDir(OldPath)

最新更新