I made an application that uses the openssl dlls (libeay32.dll and ssleay32.dll).
It is indy using them, I don’t call the dlls directly.
The simplest workaround i found to avoid an installer (i just delpoy an exe and i am ok with this approach) is to:
- put the dlls as resources of the exe
- on program start I extract them in the exe folder
- the exe uses them
This is perfect but I would like to improve the approach by extracting the dlls in a temp folder and not on the exe folder (that in many cases is the desktop).
The problem is that I don’t know how to force the application to use the dlls in the temp folder, because now the behaviour is:
if dlls are not in current directory try to search in the directories defined in the system path.
Who knows a solution to force indy to use the dlls in my temp path? (like “temporarly registering the dlls”)
Load the DLLs yourself with
LoadLibraryas soon as you have written them to the temp folder.This will make Indy’s
LoadLibraryuse your DLLs when they need them: