I have an application accessing Informix DB via ODBC. It worked fine at users PCs since 2021 (Lazarus 2.0.10).
Recently customer have changed to another domain and have re-installed OS at all PCs (still Windows 10).
After that my application start reporting error:
Could not connect with connection string "DSN=OSCC_CCC;".
ODBC error details: LastReturnCode: SQL_ERROR; Record 1: SqlState: HY000; NativeError: -931;
Message: [Informix][Informix ODBC Driver][Informix]Cannot locate turbo service/tcp service in /etc/services.;
IBM says to add service turbo into file C:\Windows\System32\drivers\etc\services to clear this error.
But this is done.
Test from ODBC Data Sources Manager runs successfully, so ODBC is configured fine.My application connects to DB just by DSN name, even user and password are set in ODBC.
var DBConn: TODBCConnection;
DBconn.DatabaseName:="OSCC_CCC";
DBConn.Open;
It does not interact with
turbo service or file
services directly.
I have tried playing with administrator rights, start application as administrator, changing file permissions, etc.
I've recompiled application with Lazarus 2.2.4.
Nothing helps.
Please advise how to deal with that.
PS
Application still runs successfully on a Windows server machine, which was not re-installed.
Problem can be reproduced with deleting file
services or word
turbo from it.
So sense is that problem with access rights to file
services, but how to solve this?
PPS
The same with User DSN.