delphi - Exception loading ssleay32 with Indy10 with HTTP Server -


i'm trying implement ssl support on http server , i'm getting exception when activate server component:

the ordinal 3314 not located in dynamic link library "ssleay32.dll".

this application ported delphi 2007 delphi xe7. had been working in 2007.

here's i've tried:

  • got latest openssl dlls. same error

  • created new xe7 test project form httpserver , openssl iohandler components. worked.

  • i'm not using visual components in primary app; thought i'd try creating form in primary app. added appropriate components, , failed same error.

  • since project ported d2007, thought there may settings in old project may interfering. created new dxe project , imported forms, units, etc. same error.

  • i thought possibly manually generated code may incorrect, copied on test dxe project; , worked.

i did discover error being thrown call loadlibrary in safeloadlibrary in system.sysutils.

my conjectures are.

  • there's setting somewhere interfering correct operation.

  • there's path supporting dll missing

any ideas?


it turns out have old libeay32.dll , ssleay32.dll (for indy9) in same folder exe, , latest versions in sub-folder. i'm using idopensslsetlibpath set path sub-folder, must loading old libeay32.dll prior indy components. historical reasons, need support both - i've still got d2007 code running indy9 components. thoughts on how can support scenario (short of rewriting lot of old code use indy 10)?

turns out had included 1 of our internal libraries uses synapse tcp/ip library. ssl implementation loads dlls during initialization, dlls installed @ root of application. when indy tried load latest, failed. there didn't appear way override path dlls in synapse, modified source load them sub-folder.


Comments

Popular posts from this blog

PHP DOM loadHTML() method unusual warning -

python - How to create jsonb index using GIN on SQLAlchemy? -

c# - TransactionScope not rolling back although no complete() is called -