Postgresql с Zeos: libpq не найден или не загружается на win 7 64

У меня установлен PostgreSQL 9.2 на win 7 64, и я могу без проблем подключиться к нему с помощью ODBC из моей среды разработки Delphi с помощью dbexpress. Когда я пытаюсь подключиться с помощью Zeos, и хотя я указал путь к libpq.dll, я все равно получаю сообщение об ошибке (libpq не найден или не загружается). Я перепробовал все решения, которые нашел в гугле, но пока не нашел рабочего решения. Я поместил dll, а позже и все dll в system32, чтобы хотя бы посмотреть, нужно ли это.

Это моя установка:

Delphi XE3 Zeos 7 PostgreSQL 9.2 В Windows 7 64

Кто-нибудь использует эту систему и может подключиться к postgresql 9.2 с помощью zeos? Если да, то что мне не хватает?

Итак, мой вопрос, обобщенный в одной строке, таков:

Какова рабочая конфигурация/шаги для подключения zeos 7 к postgresql на delphi на win 7 64?

Ваш ответ очень ценится!!


person user2441588    schedule 06.06.2013    source источник


Ответы (4)


Убедитесь, что вместе с libpq.dll у вас есть следующие файлы: libeay32.dll, libiconv.dll, ssleay32.dll, libintl.dll, libxml2.dll и libxslt.dll. Это библиотечные файлы, от которых зависит lipq.dll. Delphi IDE является 32-битной, поэтому вы можете использовать только 32-битную версию вышеуказанных библиотек, если хотите подключиться к postgresql во время разработки. Если ваш проект 64-битный, вы можете получить 64-битную версию вышеуказанных файлов и поместить ее в отдельную папку в корневом каталоге вашего проекта, а затем изменить путь libpq.dll ZConnection во время выполнения, чтобы указать на эту папку.

Надеюсь это поможет.

person pcpestolante    schedule 06.06.2013
comment
Нет, это не работает. Я очистил всю установку postgres и все сделал заново. Я должен попробовать это на машине win 7 32 - person user2441588; 07.06.2013

Вы уверены, что у вас ZeosLib x64? При создании компонента убедитесь, что вы выбрали 64-разрядную версию Windows в качестве целевой платформы.

person Edijs Kolesnikovičs    schedule 14.12.2013

Скорее всего, на компьютере, на котором возникает проблема, отсутствует распространяемый пакет Microsoft Visual C++ 2010 x64. Я советую вам загрузить его с сайта Microsoft и установить. , затем запустите еще один тест.

person AlexSC    schedule 12.03.2014

У меня такая же проблема. Чтобы обойти это, мне пришлось изменить рабочий каталог приложения delphi на путь к libpq.dll, потому что иначе оно не сможет найти другие необходимые ему библиотеки. Так что, возможно, вы захотите сделать что-то подобное перед открытием первого подключения к postgresql:

OldPath := ExtractFilePath(Application.ExeName);
ChDir('c:\path\to\libpq\dll\');
ZConnection.Connect;
ChDir(OldPath)
person marsupilami    schedule 17.07.2014