That was I supposed the way ICS procedure.
But what happens when ICS is also in a DLL?
When application starts working directory contains application and my
personal dll's.
The problem came at the moment I need to use the dll with ICS component,
because working directory may have changed.
Will need to find the most safe way to restore working directory to
application one.
There is a way to detect the directory from which was loaded dll when
that was done by windows?
Xavi
El 16/07/2015 a les 8:59, Angus Robertson - Magenta Systems Ltd ha escrit:
There is any way to tell ICS where to search and load OpenSSL DLLs
to prevent load incompatible version?
ICS tries to load the OpenSSL DLLs from the same directory as the application,
if
they are not found there it tries the system path.
At this moment I copy these DLLs to system32 or syswow64 and I not
detected any problems on other programs.
I've never seen an application install OpenSSL into these directories, not a
good
idea.
Due to the numerous versions of OpenSSL and numerous applications that use it,
the
only safe solution is to put the DLLs in the same directory as the application,
It is always a good idea to test and log the actual OpenSSL version when your
application starts, to avoid problems later.
try
MailSslContext.InitContext ; // initialises GLIBEAY_DLL_FileName
if NOT FileExists (GLIBEAY_DLL_FileName) then
DispInfoLog ('SSL/TLS DLL Not Found: ' + GLIBEAY_DLL_FileName)
else
DispInfoLog ('SSL/TLS DLL: ' + GLIBEAY_DLL_FileName + ',
Version: ' + OpenSslVersion) ;
except
DispInfoLog ('Failed to Initialse SSL/TLS - ' + GetExceptMess
(ExceptObject)) ;
end;
Angus
--
Xavier Mor-Mur
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be