Jump to content
Jeff Hamblin

8.71 to 9.3 on D2007

Recommended Posts

Going through the usual update process for a new major ICS version, with the latest SVN (today 19sep2024).

All good until the building OverbyteIcsD2007Run.dproj.
Line 16425 of OverbyteIcsWSocket:
{$IFEND YuOpenSSL} <<<<< --- replace with $ENDIF fixed it

Going on to next steps now.
 

Many thanks to you Angus for all the work over the years. The documentation for v9 is excellent.

Share this post


Link to post

Continuing with a update to v9.3 on D2007...
I ran into some (mostly expected) errors when updating a few applications that use ICS.

I had followed the recommendation in readme for Tools|Options to put "\Lib\Debug\Win32\D2007" dir in the Library Path and "\Source" dir in Browsing path.

Opening a couple of projects, I did get some errors in the IDE, easily resolved by adding OverbyteIcsTypes to uses.

On first build, though, I got DCC errors that it couldn't find the three new SSL related RES files. Resolved by changing "\Source" from Browsing Path to the Library Path.

 

Now the apps would completely compile, but on each build windows10 security threat pops up (see image below). Every time. Same for each of my apps that use ICS. I assume it's related to the embedded SSL resource files. So I turned off that option in defines.

OverbyteIcsDefs.inc, commented out {x$DEFINE OpenSSL_Resource_Files}

That fixed the pop-up.

 

Building again without SSL resource files then using HTTPCli in app got the following error:
HTTP error: 404 Abort on Exception: Failed to load OpenSSL file C:\ProgramData\ICS-OpenSSL\libcrypto-3.dll

Looking in the folder, it's a deeper path to the file: C:\ProgramData\ICS-OpenSSL\3302\libcrypto-3.dll

Going back to the OverbyteIcsDefs.inc file, there is a note about that in the comments for {$DEFINE OpenSSL_ProgramData}, which I was going to disable. So, instead, I copied the SSL dlls up one level.

I haven't decided if I'll keep the SSL dll's centralized like that, or go back to keeping them with each application. I do like having the option.

 

Overall this was a rather easy update considering all the changes in v9 and an ancient IDE.

 

Thank you again, Angus, & François

sec-warn.jpg

Share this post


Link to post

Thanks, fixed the erroneous $ifend.  I still have customer applications using D2007, so would have found it soon. 

 

The ICS distribution only includes OpenSSL DLLs in C:\ProgramData\ICS-OpenSSL\  which are always the latest version, when you build the packages a batch command file runs that copies them from the install directory to ProgramData, so I guess that failed in your case. 

 

The DLLs in version directories were extracted from the resource files, and need to be version specific since different ICS applications may be using different OpenSSL versions. 

 

No idea why Windows Security gave you a warning, no-one else has mentioned that in eight months since ICS has used OpenSSL resource files.

 

Angus

 

 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×