libpq c++ ошибка выполнения

Написал такой код:

#include <iostream>
#include <libpq-fe.h>
using namespace std;

int main()
{
    PGconn* conn = PQconnectdb("host=localhost post=3010 dbname=postgres username=postgres password=admin123");
    if (PQstatus(conn) == CONNECTION_BAD)
    {
        printf("Connection error\n");
        PQfinish(conn);
        return -1; //Execution of the program will stop here
    }
    printf("Connection ok\n");
    //End connection
    PQfinish(conn);
    printf("Disconnected\n");
}

В visual studio:

  1. поставил debug x64
  2. C/C++ > Общие > Дополнительные каталоги включаемых файлов += "D:\Programs\PostgreSQL\include"
  3. Компоновщик > Общие > Дополнительные каталоги библиотек += "D:\Programs\PostgreSQL\lib"
  4. Компоновщик > Ввод > Дополнительные зависимости += "libpq.lib" // объясните зачем это

Скомпилировал, ошибок нет.

Запустил:введите сюда описание изображения

Из-за чего эта ошибка? Как решить?

UPD: Установил все необходимые dll и поместил их в папку с exe-шником. введите сюда описание изображения


Ответы (1 шт):

Автор решения: gbg

Это сообщение однозначно говорит о том, что Windows не смогла загрузить libpq.dll.

В папке с программой или по путям, прописанным в переменной PATH либо нет самой dll, либо какой-то из dll, от которых она зависит.

Просмотреть зависимости можно этим инструментом

→ Ссылка