PB2019R3
With much help I was able to hardcode a DBPARM string to get a DNS-less connection to a PostgreSQL database.
// hard coded DBPARM
"ConnectString='Driver=PostgreSQL Unicode;Database=nttest;Server=10.51.78.544;Port=5444;UID=oknight;PWD=oknight;',DisableBind=1,UseServerSidePrepare=1,PBCatalogOwner='chadba',StripParmNames='Yes'"
To make it generic so the customers can specify their own database information, I put the data into the Registry:
The application reads the registry and constructs to DBPARM string, which is >>> IDENTICAL <<< to the hardcoded string. Here's the constructed string:
"ConnectString='Driver=PostgreSQL Unicode;Database=nttest;Server=10.51.78.544;Port=5444;UID=oknight;PWD=oknight;',DisableBind=1,UseServerSidePrepare=1,PBCatalogOwner='chadba',StripParmNames='Yes'"
In debug mode, when the app is run from the IDE using the hardcoded string for sqlca.DBParms, it works.
If I use the constructed string, it prompts me for a DSN!
The strings are identical.
This behavior occurs in the compiled EXE, as well.
WHAT is going on and how can I get the constructed string to connect without prompting me for a DSN?