Indy TIdSSLIOHandlerSocketOpenSSL implementation<>
This question already has an answer here:
I am getting the error that the IOHandler value is not valid.
You must not be using an up-to-date version of Indy, because new code was added a year ago to help users deal with that error:
After scouring the forums I found that I need to create a TIDSSLIOHandlerOpenSSL object and assign a value to this.
You need to create a TIdSSLIOHandlerSocketOpenSSL object and assign it to the TIdHTTP.IOHandler property, and then configure the IOHandler with whatever encryption settings you need (SSL/TLS version(s), certificates, etc).
I am very new to the SSL protocols and need some help on how to import the TIdSSLIOHandlerSocketOpenSSL library into Delphi.
There is nothing to import. The TIdSSLIOHandlerSocketOpenSSL component is part of Indy, same as the TIdHTTP component. They are both available in Indy's pages of the IDE's Component Palette and Tool Palette, so you can drop them on a Form/Frame/DataModule at design-time, or you can create them programmably in code at runtime, your choice.
I have the libeay32.dll and ssleay32.dll in the application folder. Do I need to register them?
No. TIdSSLIOHandlerSocketOpenSSL loads them dynamically at runtime, using the OS search path by default to find them. The OS looks in the application folder first. If you need to store them somewhere else, you can call Indy's IdOpenSSLSetLibPath() function at runtime to tell Indy where they are located.
Once that is done, how would I then make the component visibile in Delphi XE7?
The same way you do any other component. If you have Indy installed, you already have the TIdHTTP and TIdSSLIOHandlerSocketOpenSSL components available. Indy is available for both VCL and FireMonkey projects.