Open web page with redirect lazarus / 38-Networking and Web Programming ---------------------------------------------------------------------- stansbkg · 2022-10-04 16:19 I'm trying to use Client.Get to scrape web data, with the ability to redirect. I created a test program (attached), which I drew from [ https://forum.lazarus.freepascal.org/index.php?topic=58637.0 ]. Why do I get the following error message? Running "c:\fpc\3.2.2\bin\i386-win32\kgs storage\atestclientget.exe " An unhandled exception occurred at $00425AE5: EInOutError: Could not initialize OpenSSL library ---------------------------------------------------------------------- dje · 2022-10-05 06:30 Sounds like you are missing the required SSL DLL's ---------------------------------------------------------------------- Thaddy · 2022-10-05 10:14 Or the wrong versions. What is your compiler: 64 or 32 bit? BTW: this is a recurring problem and the correct answers are all over this forum. ---------------------------------------------------------------------- Jurassic Pork · 2022-10-05 11:10 Hello, Quote from: stansbkg on October 04, 2022, 06:19:20 pmRunning "c:\fpc\3.2.2\bin\i386-win32\kgs storage\atestclientget.exe " An unhandled exception occurred at $00425AE5: EInOutError: Could not initialize OpenSSL library try to see if you have the dll   ssleay32.dll in the folder Windows\system32  (for 64 bits) or Windows\Syswow64 ( for 32 bits) . You can also search for the other dlls of this code :   Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i {$IFDEF WINDOWS}  DLLSSLName: string = 'ssleay32.dll';  DLLSSLName2: string = 'libssl32.dll';  DLLSSLName3: string = {$IFDEF WIN64}'libssl-1_1-x64.dll'{$ELSE}'libssl-1_1.dll'{$ENDIF};  DLLUtilName: string = 'libeay32.dll';  DLLUtilName2: string = {$IFDEF WIN64}'libcrypto-1_1-x64.dll'{$ELSE}'libcrypto-1_1.dll'{$ENDIF};  {$ELSE} ---------------------------------------------------------------------- stansbkg · 2022-10-07 18:31 I don't have any of those XX.dlls. Should they have been loaded when I installed Free Pascal? Also, where can I find what I need? ---------------------------------------------------------------------- dje · 2022-10-07 22:35 Quote from: stansbkg on October 07, 2022, 08:31:35 pmI don't have any of those XX.dlls. Should they have been loaded when I installed Free Pascal? Also, where can I find what I need? Everything is documented: https://wiki.lazarus.freepascal.org/fphttpclient#HTTPS_.28TLS.2FSSL.29 Which contains a link to: https://wiki.openssl.org/index.php/Binaries ---------------------------------------------------------------------- stansbkg · 2022-10-08 18:21 How do I know what is the right openssl download to use? I have tried seven so far - only using those for 64 bit delphi applications, and all have failed with the same error message. I'm somewhat overwhelmed right now. ---------------------------------------------------------------------- dje · 2022-10-08 20:18 Maybe try the advice from here: https://forum.lazarus.freepascal.org/index.php?topic=41401.0 They recommend the Indy SSL libs froms: https://indy.fulgan.com/SSL/ Also, your filepath implies you are using FPC 32bit (ie: i386-win32) Unsure if the 64bit versions will work. ---------------------------------------------------------------------- Jurassic Pork · 2022-10-09 01:45 Hello, have a look  here : you have link to download files and explanation to install them : Quote32-bit and 64-bit Windows To install OpenSSL in a 32-bit or 64-bit Windows, you need to copy the libeay32.dll and ssleay32.dll dynamic library files to your file system, you can download them from one of these locations: Option 1 - Download the OpenSSL installer files and install them. Option 2 - Download the OpenSSL compressed library files and copy the libeay32.dll and ssleay32.dll files to your system path. If you go for Option 2 and decide to copy libeay32.dll and ssleay32.dll files to your system path, ensure you copy them to the right location: 32-bit Windows: You must copy the libeay32.dll and ssleay32.dll 32-bit files to your Windows system folder (System32 folder). 64-bit Windows: You must copy the libeay32.dll and ssleay32.dll 64-bit files to your Windows system folder for 64-bit files (System32) and the libeay32.dll and ssleay32.dll 32-bit files to your Windows 32-bit files folder (SysWOW64 folder). So when working with a 64-bit Windows, remember: System32 folder is for 64-bit files only. SysWOW64 folder is for 32-bit files only. it seems that you use Lazarus 32 bits on  a 64 bits Windows, so the 32 bits version of the dll's must be install in the folder SysWow64. Friendly, J.P