Ошибка подключения psycopg2 при запуске с сетевого диска - PullRequest
0 голосов
/ 16 мая 2019

Я написал приложение на Python, которое использует psycopg2 для подключения к серверу Postgresql.При выполнении приложения с использованием Pycharm, когда python-файлы находятся на сетевом диске, соединение работает без проблем.

Я бы хотел распространять приложение для Windows, используя Pyinstaller.Однако при выполнении exe-файла, созданного Pyinstaller, на сетевом диске я получаю разные ошибки.Если я подключаюсь к локальному хосту, я получаю следующую ошибку:

psycopg2.OperationalError: could not translate host name "localhost" to address: Unknown server error

При изменении этого параметра на удаленный хост я получаю

psycopg2.OperationalError: could not create socket: Invalid argument (0x00002726/10022)

Теперь, если я копирую папку dist,который Pyinstaller создает для локального каталога, например C: \ temp, он работает без проблем.

Существует ли конкретная причина, по которой я не могу запустить приложение с сетевого диска?Все задействованные компьютеры работают под управлением Windows (клиент, сервер, на котором работает postgres).

PS: Вот простой пример, который не работает для меня при преобразовании в исполняемый файл с Pyinstaller и запуске с сетевого диска:

from psycopg2 import connect, extras

if __name__ == "__main__":
    # Basic UI Setup
    dbCon = connect(dbname='datb', user='postgres', host='localhost', password='pw', port='5432')
    cursor = dbCon.cursor(
        cursor_factory=extras.NamedTupleCursor)

    dbCon.close()

Редактировать: я пытался запустить exe-файл с другого сетевого диска, и на удивление, он работал там.Начальный сетевой диск не работает.Возможно, это вопрос разрешения?

...