Ошибка при подключении PostgreSQL API к проекту

Рейтинг: 0Ответов: 0Опубликовано: 22.04.2023

Хотел подключиться к базе PostgreSQL при помощи своей программы. Столкнулся с ошибкой что программа либо не видит файла libpq.dll, либо не может его открыть.

Конфигурация:

  • Windows 11
  • VisualStudio 22
    Чистый С проект. Флаги: /TC /std:c17
    Свойства конфигурации:
    Каталоги VC++ - Включаемые каталоги: C:\Program Files\PostgreSQL\15\include
    Каталоги VC++ - Каталоги библиотек: C:\Program Files\PostgreSQL\15\lib
    Компоновщик - Ввод - Дополнительные зависимости: libpq.lib
  • PostgreSQL 15.2 | pgAdmin 4

Настройки при установке все стандартные, пути сохранены и кириллицы в них нет. PostgreSQL нормально функционирует, pgAdmin работает и логинится к серверу, таблицы создаются.

Проверочный код:

#include <stdio.h>
#include <libpq-fe.h>

int main() {
    printf("%i\n", PQlibVersion());
    return 0;
}

Код в редакторе не выдаёт ни ошибок, ни предупреждений. Пытался по разному подключать и через папку lib и через bin. И расширение менял с .lib и .dll (Если указывать .dll - линковщик сразу ругается ошибкой "LNK1107 недопустимый или поврежденный файл: не удается прочитать по 0x308 C:\Program Files\PostgreSQL\15\lib\libpq.dll") Выгружал все зависимости в папку с проектом и даже в отдельную папку, думая что может на корневую папку наложены какие-то атрибуты чтения не те. Качал отдельно бинарники и исходники с сайта - пытался через них подключаться. Винду перезагружал, запускал от имени администратора всё что запускается. PostgreSQL переустанавливал.

В чём может быть ещё проблема?

Ответы

Ответов пока нет.