* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Aprile 19, 2024, 12:57:52 am

Inserisci il nome utente, la password e la durata della sessione.

327 Visitatori, 0 Utenti

Autore Topic: Errore con ZEOS dopo aggiornamento Lazarus 2.2.0  (Letto 2103 volte)

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« il: Marzo 16, 2022, 03:09:29 pm »
Salve a tutti
Ho un problema con ZEOS (credo). Ho dei programmi in cui ho utilizzato Zeos per connettermi a PostgreSQL che funzionavano correttamente. Dopo aver fatto l'aggiornamento a Lazarus dalla 2.0 alla 2.2 e aver reinstallato ZEOS mi compare sempre questo errore:

Client-Library C:\Program Files\PostgreSQL\12\bin\libpq.dll found but could not be loaded. Check compile-target and library compatibility!


Questo si verifica quando cerco di connettere il TZConnection.
Ho provato anche a copiare libpq.dll nella cartella del progetto ma non cambia nulla.
Non ho fatto nessun aggiornamento a PostgreSQL e l'eseguibile che avevo creato precedentemente continua a funzionare correttamente.
Qualcuno ha già avuto un problema simile?

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #1 il: Marzo 16, 2022, 03:54:48 pm »
Sembrerebbe essere un errore legato non tanto alla libreria che viene trovata, ma a qualche ulteriore DLL che non esiste, comunque ...

Tanto per cominciare, la libreria a cui accedi è X64, hai verificato nelle opzioni di progetto che il tuo progetto sia per X64 ? Se fosse per x86 (32 bit) non potrebbe funzionare.

Ulteriormente, nelle proprietà di ZConnection, hai verificato che la versione di Postgress indicata nella proprietà "protocol" sia quella che effettivamente usi ? Può essere che con l'aggiornamento quel dato sia stato modificato.

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #2 il: Marzo 16, 2022, 06:51:38 pm »
Grazie per la risposta rapida.

La libreria è prelevata dalla cartella in cui è installato Postgresql.
Ho provato con quella nella directory   C:\Program Files\PostgreSQL\12\bin\libpq.dll
e l'altra nella                                     C:\Program Files\PostgreSQL\12\lib\libpq.dll
Ritengo che siano X64.
Ma non funzionano.
Nel TZConnection nella proprietà "protocol" non è presente "postgresql-12" ma solo fino a "postgresql-9". Tuttavia con questa proprietà precedentemente funzionava su questa stessa macchina w10 I7 . Ho provato anche con la proprietà non indicizzata "postgres".
Ho anche disinstallato completamente Lazarus, disintallato zeos installata con online package Manager e reinstallato con zeos scaricato direttamente da sourceforgenet.

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #3 il: Marzo 16, 2022, 09:36:13 pm »
Ho installato progress e provo a vedere se riesco a replicare il problema.
..........
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #4 il: Marzo 16, 2022, 09:55:47 pm »
A me funziona senza problemi nei due modi previsti da progres (nel caso della DLL ho provato sia progres che progres-9)

In particolare, provando con altri ambienti nessuno usa la dll per la connessione, ma usano tutti il TCP.

Io ho usato 2nQuadrant, che mi ha installato tutto compreso OmniDB così potevo fare una serie di test.

Ti posto l'immagine di connessione tramite DLL e tramite TCP.

Ti consiglio di provare a connetterti tramite TCP per vedere se almeno così temporaneamente tamponi.

EDIT: Lazarus 2.20 stable X64 con ZEOS (la versione la vedi negli llegati)

Ciao
« Ultima modifica: Marzo 16, 2022, 10:02:58 pm da DragoRosso »
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #5 il: Marzo 17, 2022, 07:42:03 pm »
Grazie ancora del tuo tempo.
Ho provato come mi hai suggerito e non funziona. Ho provato sia in localhost che su PGSQL sul NAS. Sempre errore di compatibilità.
Ho cercato sul form inglese ed il problema era presente nel 2016 e dicevano di installare alcune librerie da cui dipendeva libpq.dll ma in quel modo anche se si connetteva non consentiva di modificare i dati sul db.
https://forum.lazarus.freepascal.org/index.php/topic,31964.msg205610.html#msg205610

In alternativa vorrei usare tpqConnection di SQLdb ma anche qui dice che non trova libpq.dll. Ho provato a collocarne una copia nella cartella del progetto ma non funziona.


DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #6 il: Marzo 17, 2022, 09:27:47 pm »
Grazie ancora del tuo tempo.
Ho provato come mi hai suggerito e non funziona. Ho provato sia in localhost che su PGSQL sul NAS. Sempre errore di compatibilità.
Ho cercato sul form inglese ed il problema era presente nel 2016 e dicevano di installare alcune librerie da cui dipendeva libpq.dll ma in quel modo anche se si connetteva non consentiva di modificare i dati sul db.
https://forum.lazarus.freepascal.org/index.php/topic,31964.msg205610.html#msg205610

In alternativa vorrei usare tpqConnection di SQLdb ma anche qui dice che non trova libpq.dll. Ho provato a collocarne una copia nella cartella del progetto ma non funziona.

Il problema era noto e come ti avevo accennato inizialmente anche secondo me poteva dipendere dalla mancanza di DLL.

Ma la connessione TCP non ha necessità di quella libreria. Controlla bene quello che hai fatto e guarda il mio allegato .... NON C'E' il collegamento alla DLL nell'immagine riguardante il collegamento TCP.

NON DEVI IMPOSTARE LA DLL, se no Lazarus usa quella e non l'HOST......

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #7 il: Marzo 18, 2022, 06:47:07 pm »
Provato di nuovo ma quando provo a connettere mi da l'errore come si vede nell'allegato. Proverò a passare tutto su un'altra macchina per vedere se per caso il problema non è nel S.O.

Buonaserata

Stilgar

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2382
  • Karma: +10/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #8 il: Marzo 18, 2022, 07:05:44 pm »
Ciao
https://www.blackice.com/Help/Tools/PrinterDriver%20Demo/RTK_Full_WebHelp/How_to_check_the_dll_is_32_or_64-bit.htm


Magari la DLL è della "versione" giusta, ma dare una controllata non credo sia un'idea sbagliata :)


Stilgar
Al mondo ci sono 10 tipi di persone ... chi capisce il binario e chi no.

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #9 il: Marzo 18, 2022, 07:52:19 pm »
Grazie anche a te
 Verificato è la versione giusta  tuttavia segnala alcuni errori  nella DLL
Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: A circular dependency was detected.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.


Ma non credo che possa dipendere da questi perche altri eseguibili compilati prima dell'aggiornamento funzionano ancora bene.

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #10 il: Marzo 18, 2022, 09:56:48 pm »
Quegli errori sono normali. Sicuramente fanno riferimento ad Asssembly che possono essere "bindati" solo a runtime (tipicamente le API del .Net Framework).

L'errore che ti riporta ZEOS invece non è normale. Avrebbe dovuto connettersi tramite TCP, non tramite la libreria dll.

Non è che hai copie della dll nella stessa directory del tuo programma eseguibile ?

Ciao

:) Ogni alba è un regalo, ogni tramonto è una conquista :)

schumi

  • Full Member
  • ***
  • Post: 219
  • Karma: +1/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #11 il: Marzo 21, 2022, 08:52:42 am »
ciao,
io uso abitualmente lazarus 2.2 + zeos 7.2.14.0 (via OPM) e postgresql, sia 64 che 32 bit, quindi non è un problema di zeos o versione Laz.
tempo fa avevo installato un programmino fatto da me su un server windows e non funzionava, ho dovuto scaricare libeay32.dll e ssleay32.dll diverse per quella macchina.

Prova a copiare tutte le DLL PGSQL nella cartella del tuo programma.
dovrebbero essere queste
libcrypto-1_1-x64.dll
libcurl.dll
libeay32.dll
libecpg.dll
libiconv-2.dll
libintl-8.dll
libpgtypes.dll
libpq.dll
libssl-1_1-x64.dll
libxml2.dll
libxslt.dll
ssleay32.dll
zlib1.dll
« Ultima modifica: Marzo 21, 2022, 02:55:48 pm da schumi »

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #12 il: Marzo 21, 2022, 07:39:10 pm »
Ciao
ho provato a copiare le DLL che mi hai indicato ma non è servito. Per scrupolo ho copiato TUTTE le DLL di pgsql nella cartella del programma ma ottengo lo stesso risultato. Disinstallato Lazarus e Reinstallato ma ancora niente. Ho anche provato ad aprire un nuovo programma senza unit particolari ma rimane uguale.

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1266
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #13 il: Marzo 21, 2022, 08:19:22 pm »
Scusa un attimo, facciamo un punto 0.

Intanto da terminale e dalla bin di Postgres, prova a digitare:

Codice: [Seleziona]
pg_isready

Dovresti avere una risposta tipo questa.
Codice: [Seleziona]
C:\Program Files\2ndQuadrant\PostgreSQL\12\bin>pg_isready.exe
/tmp:5432 - accepting connections

Confermi ?
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

opto

  • Newbie
  • *
  • Post: 19
  • Karma: +0/-0
Re:Errore con ZEOS dopo aggiornamento Lazarus 2.2.0
« Risposta #14 il: Marzo 22, 2022, 11:24:45 am »
Scusa se non ho risposto subito.
Confermo che la risposta è
/tmp:5432 - accepting connections

 

Recenti

How To

Utenti
  • Utenti in totale: 785
  • Latest: gmax
Stats
  • Post in totale: 18771
  • Topic in totale: 2233
  • Online Today: 321
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 327
Total: 327

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.