(01-15-2024, 08:23 PM)rlebeau Wrote: Can't you get a newer ODBC driver? If not from this company, then from another company?
No. Its a very niche Database... Main target is banks and medical industries.
Just so happen our company used it too ( which is neither bank or medical related )
And our software started in 1979 ( year before i was born )
So really nothing on that front is gonna change.
For newer ODBC no. They won't budge.
We are "stuck" on their 2018 server flavor for now. Anything past that right now is gonna cost literally millions if dollars for new licenses and such to migrate to their newer database system. Which is literally same stuff, just a new name and some new features. Lawyers are involved, and way beyond me. I am just a cog in the machine here.
And the 2018 ODBC Drivers... for their 2018 Server Software... Use 1.0.2gz Openssl which appears to be from 2015.
Which i've found to cause lots of issues i've come to find with random products of ours that needed OpenSSL... Such as a Datasnap REST server that gets random SSL disconnect exception errors flagged.
Just oddball stuff.
No one else makes drivers. Its priority. They do have JDBC drivers. But that isn't gonna do me any good.
I did seem to maybe come up with a half-ass solution....
I copied IdSSLOpenSSLHeaders.pas to my source folder and edited it. I put "cmrs" in the file name CONSTS. And rename the files accordingly.
Now when running it, I used madExcept to raise an error... so it would dump me all the loaded modules.
I can now see CMRS ( my program ) ... has lbeay32.cmrs.dll and ssleay32.cmrs.dll loaded up.
And the ODBC Driver has ssleay32.dll and libeay32.dll from its own install folder loaded.
Before doing this... there would only be one instance of the two DLL's in memory... and it would the OpenSSL files loaded by indy as that would get ran first.
I don't know if this is good or bad... but i had three of our QA testers doing testing for an hour with no errors. Where before , it would crop up in under 1 minute every time.
I don't think there is code in IdSSLOpenSSLHeaders to allow me to change the dll file names to look for? if not, ill just have to for now on, include this file source over time and edit it to fit my needs.
But if works, it would be another of 1000 sloppy ugly work arounds i've had to do in my life to get by